全部博文(245)
分类: Mysql/postgreSQL
2011-05-17 16:15:40
SQL命令
1. 创建数据库
create database 数据库名
例如: create database filedb
2. 创建表
create table 表名( 字段说明)
例如: create table file( id int name varchar(50) not null ,price int default 0)
3. 添加数据
例如:insert into file values( 23,'wang', 120 )
4. 删除数据库
drop database filedb
5. 删除表
drop table file
6. 删除记录
delete
7. 在已经存在的表中添加字段
alter table 表名 add 字段名 字段类型 附加信息
例如: alter table filelist add author varchar(50) null default 'unknow'
8. 删除表中的所有数据,但不删除表
truncate table 表名
例如: truncate table filelist
数据类型
9. 字符型数据:
例如:VARCHAR(40) CHAR(40)
这种类型需要注意: 如果字符串为"test",对于CHAR会在剩下的地方填充空格
适用于短字符,最大255,如果是字符比较多,可以考虑使用文本类型。
10. 文本型数据:
存储比较多的字符,最多有20亿个字符。要谨慎使用文本类型,因为比较耗费硬盘,如果可以使用字符型的,就不要使用文本型。
TEXT字段,一旦赋值,就会有2k的空间被占用,哪怕是空值。
11. 数值型数据:
INT : 4字节有符号数,一个非常大的整数
SMALLINT: -32768到+32768
TINYINT: 0到255的整数,不能存储负数
以上只能存储整数,如果要存储小数或者更大的数据可以使用
NUMERIC,需要指定整数部分与小数部分:
NUMERIC可以存储 -10^38到 +10^38之间的数据。
使用:
NUMERIC(整数部分大小,小数部分大小)
与金钱有关的整数可以使用:
MONEY
小数目金钱可以使用:
SMALLMONEY
12. 存储逻辑值:
BIT:只有两种数据0或者1
13. 存储日期和时间:
DATETIME,可以精确到毫秒,可以参照上边的数据,同一种类型的数据都会有小数据,这里小数据可以使用SMALLDATETIME,可以精确到1s
字段属性
控制空值、缺省值和标识值。
1. 允许空值
大多数字段是允许空值,可以使用“NULL”,空值标识没有任何数据,为了允许一个字段含有空值,可以在字段定义后边加入"NULL",但逻辑类型数据BIT是不允许有空值,必须是0或者1的数字,
2. 禁止空值
同样的方法,可以在字段定义的后边加入" NOT NULL"来禁止空值数据的出现。
例如: create table file values( id INT NOT NULL, price MONEY NULL)
3. 缺省字段
有一些字段在表创建的时候需要填写一些默认的数值,可以在字段定义后边加入DEFAULT "缺省数据"
例如:
CREATE TABLE addresses (street VARCHAR(60) NULL,
city VARCHAR(40) NULL,
state VARCHAR(20) NULL
zip VARCHAR(20) NULL,
country VARCHAR(30) DEFAULT ‘USA’)
CREATE TABLE orders(price MONEY DEFAULT $38.00,
quantity INT DEFAULT 50,
entrydate DATETIME DEFAULT GETDATE())
这里需要注意的是:缺省值除了指定数据外,还可以使用SQL内建的函数进行数值操作。在上边的操作种默认值,使用GETDATE()函数的返回值,该函数返回当前的时间。
4. 标识字段
一个表中最大只能有一个而且只能有一个标识字段,可以使用字符IDENTITY来标识这个字段为标识字段。
思想矫正与用SQL思想管理数据
1. 抛弃循环的思想
数据是独立的,不要使用循环去读取一串数据,要用SQL条件语句。