易截截图软件、单文件、免安装、纯绿色、仅160KB

gcc 编译多线程文件和含MySql数据库操作文件

gcc 强大的编译器就不作介绍了
linux下用gcc命令编译多线程C程序文件和含有MySql数据库操作文件
1.编译多线程文件
gcc -o mylti_thread.o multi_thread.c -lpthread
其中的multi_thread.c表示源文件,mylti_thread.o表示编译产生的目标文件,-lpthread表示引入多线程库,在《Using the GNU Compiler Collection》gcc 4.30 中关于-lpthread的描述如下:
-lpthread      Add support for multithreading using the POSIX threads library. This option sets flags for both the preprocessor and linker. It does not affect the thread safety of object code produced by the compiler or that of libraries supplied with it. These are HP-UX specific flags. 要不然会出现类似以下错误
/tmp/cc20DpmC.o: In function `main':
multi_thread.c:(.text+0x78): undefined reference to `pthread_create'
multi_thread.c:(.text+0xe2): undefined reference to `pthread_create'
multi_thread.c:(.text+0xf6): undefined reference to `pthread_join'
multi_thread.c:(.text+0x10a): undefined reference to `pthread_join'
2.编译MySql数据库操作文件
gcc -o sqltest.o sqltest.c -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
或者gcc -o sqltest $(mysql_config --cflags) sqltest.c $(mysql_config --libs)
   参见网址 http://blog.163.com/zhangjinqing1234@126/blog/static/30730260200992251411161/
其中的sqltest.c表示源文件,sqltest.o表示编译产生的目标文件,-I表示指定头文件的默认搜索路径,-L表示指定要链接的库,同上面-l,具体可参见网址
http://blog.csdn.net/zhulinfeiba/archive/2009/08/20/4464727.aspx
-I后面的参数/usr/include/mysql可能会因为MySql安装的路径不同而有所改变,在终端输入:whereis mysql,结果如下:
mysql: /usr/bin/mysql /etc/mysql /usr/lib/mysql /usr/include/mysql
/usr/share/mysql /usr/share/man/man1/mysql.1.gz
再cd /usr/include/mysql
,然后 ls
decimal.h       my_dir.h         mysqld_error.h   sql_common.h
errmsg.h        my_getopt.h      mysql_embed.h &n


相关文档:

MySQL创始人发邮件寻求中国帮助!

亲爱的拯救MySQL的中国签名支持者:
    欧盟可能无法拯救MySQL, 中国和俄罗斯可能是拯救MySQL的希望之所在。中国拥有强大、独立以及自信的反垄断主管机关,因此,我本人在此请求您的帮助。对于您在 http://helpmysql.org/cn/petition
的签名,我们深表感谢。如果可以的话,我们需要您的进一步帮助:
&nb ......

mysql存储过程中参数的in,out,inout区别


MySQL存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT,形式如:
CREATE PROCEDURE([[IN |OUT |INOUT ] 参数名 数据类形...])
1、IN 输入参数:表示该参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值
2、OUT 输出参数:该值可在存储过程内部被改变,并可返回
3、I ......

mysql中的正则表达式搜索

语法:
select * from table_name where column_name regexp '正则表达式'
或区分大小写
select * from table_name where column_name regexp binary '正则表达式'
支持的正则表达式符号:
.    任意字符
|    或,如:a|b|c
[]   范围,比如:[a-z],[0-9],[^0-9]不包 ......

mysql中编码的设置

1.修改mysql的默认编码为gbk:修改my.init文件中的:[client]和[mysqld]下的default-character-set=gbk;
2.查看mysql数据库的编码:show variable like 'character%';或status
3.查看数据库表的编码:show create table 表名;
4.修改数据库的编码:ALTER DATABASE `database_name` DEFAULT CHARACTER SET gbk COLLATE ......

mysql dump数据

从A主机导入数据到B主机
mysqldump -hA -uusername -ppassword db_name >dumpfile
mysql -hB -uusername -ppassword
mysql>create database db_name2;
mysql>use db_name2;
mysql>source dumpfile;

先用dump把A中的数据库db_name导入到文件dumpfile,然后在B主机上,创建一个新的数据库db_name2,使用 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号