数据库编程

tar 解包的命令
tar xvf 包文件名称
tar 打包的命令
tar cvf 要打包的文件名称

rpm卸载命令
rpm -e 包名称
rpm -e 包名称 --nodeps 强行卸载,不检查包的依赖关系

rpm安装包命令
rpm -ivh 包名称

字符集
1、首先操作系统的字符集为utf8
查看操作系统字符集命令
locale

2、创建数据库的时候使用CHARACTER SET utf8;指定字符集为utf8

3、设置mysql client字符集
SET NAMES utf8;

4、CRT设置为utf8
载,不检查包的依赖关系

char 和 varchar的区别是,varchar是可变长度。

CREATE TABLE table2 (ID int(11) NOT NULL auto_increment, name varchar(100), age int, PRIMARY KEY(ID));
数据库ID自动增长。

查询 年龄大于21岁的同学
select * from table1 where age > 21;

select * from table1 where class = 'C++就业班' and age = 22;

select * from table1 where class like 'C%';

mysql的端口号是3306;

mysql -h (ip地址) -u (username) -p
远程登录mysql。

select a.name, a.sex from table1 a;
表的别名

select name from table1 where age = (select max(age) from table1);

选择不重复的
select sum(distinct age) from table1;

select count(distinct age) from table1;

聚合函数往往是与group by 来使用的
分组,group by
select count(class) from table1 group by class;

order by排序 desc 是要从大到小
select * from table1 order by age;

select * from table1 order by age ,name des

在select语句中where查询用到哪个字段,这个字段就必须建立索引
唯一索引的查询效率高于普通索引

建立表的时候PRIMARY KEY (ID))语句相当于为ID字段建立了一个唯一索引

修改表中内容
update table1 set sex = '女' where name = '小张';

/user/include是gcc查找头文件的默认路径。

Paste_Image.png

数据库client与server之间也是采用tcp协议。
1.初始化client
2.建立连接
3.client向server发送SQL语句,server将执行SQL语句的结果返回给client。
4.断开连接。

mysql的连接:
MYSQL mysql, *connection;
mysql_init(&mysql);//相当于sql内部初始化了一个TCP的SOCKet
connection = mysql_real_connect(&mysql,"localhost", "dbuser1","dbuser1","db1", 0, 0, 0);

编写mysql程序,成功连接到server后,先要设置字符集,set names utf8.

用vs编写程序时,保存的字符集是gbk,在移植到linux时,不能通过。

liunx 下printf函数是以\n结尾的字符串才输出屏幕的,如果没有\n直到输出缓冲区满了以后才输出。

数据库编程_第1张图片
Paste_Image.png

命令
system("stty erase ^H");
可以实现在输入状态下,按退格键不回显;

调用tcsetattr修改Linux基本输出输入的控制字符定义。

数据库编程_第2张图片
Paste_Image.png

mysql编程步骤:
1.导入头文件
2.初始化client;
3.建立连接;

你可能感兴趣的:(数据库编程)