关于mysql语法的几个问题
假设现在有一个如下结构的数据表
create table books
(
publisher varchar(50),
author varchar(200),
price decimal(5,2),
pageCount int(5) not null,
);
1.修改表结构时比如要把author字段设为not null,那么alter就要写成
alter table books modify author varchar(200) not null;
而这句中的varchar(200)是和原来一样的,我的问题就是能否有指令用来
修改表结构时只要写出有改变的部分呢?
比如像:command table books modify author not null;
原来的varchar(200)不变,只是给加上not null的限制;
2.比如要定义一个pageCount(页数)字段,值形如 20千字、30千字,
这个 千字 那么如何实现?
3.有时候输入sql语句执行后会有提示信息告诉有几个warning,
请问如何查看具体warning信息?
4.我如果有个现成的表记录文件,要是想导入表中(就是用load data local infile "text.txt" into table books;),但是和表的字段结构顺序不同,
应该怎么改?
比如表结构是 author | price | publisher
而现在这个文本文件的写法是
清华大学出版社 29 陆中正
就是要把现在的表结构改成
publisher | price | author
就好了
5.要是想把表中某个字段值为null的记录删除怎么写sql?
也就是想问问sql语句中null应该怎么表示
当然你知道我指的不是字符串"null"
6.我初学,目前只知道alter语句一句只能做一处修改
比如要把表中的publisher,author,price,barCode几个字段都设为not null,
而我只会一句改一处
就是先alter table books modify publisher varchar(50) not null;
然后 alter table books modify author varchar(200) not null;
再 alter table books modify price decimal(5,2) not null;
......
这样很麻烦啊,能不能一句就解决问题?
7.问题6中要对几处要修改的地方所做的修改都是一样的(都是改成not null)
要是对表中几个几个字段分别所做的修改是不同的呢
能不能用一句sql解决?
比如
先 alter table books modify publisher varchar(20) not null;
然后alter table books modify author varchar(200) null;
再 alter table books modify price decimal(5,3) null;
.....
把以上几句能否用一句sql解决?
小弟出学,遇到不少问题,希望我把问题描述清楚了
也希望各位高人帮帮我
谢谢哦!!!!!