创表
CREATE TABLE IF NOT EXISTS tableName (
`FieldName1` varchar(64) NOT NULL Default ' ', `FieldName2` double NOT NULL Default 0,
PRIMARY KEY (`FieldName2`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk
查看某个数据库表的DDL
show create table ‘tableName’
会有两列属性出现,第二列即为创表语句
插入数据
REPLACE INTO tableName (`FieldName1`,`FieldName2`) VALUES ('111',222)
INSERT INTO tableName (`FieldName1`,`FieldName2`) VALUES ('111',222)
- replace into 会有两步操作,先检查是否key值存在,存在就先删除,然后插入
- insert into,如果key值存在,插入会失败
插入多条数据
REPLACE INTO tableName
(`FieldName1`,`FieldName2`)
VALUES
('111',222),
('222',333),
('333',444)
-----------------------------------------------------
INSERT INTO tableName
(`FieldName1`,`FieldName2`)
VALUES
('111',222),
('222',333),
('333',444)
判断某个数据库表中,是否存在某列
Describe tableName `FieldName`
判断某个数据库表是否存在
SELECT table_name FROM information_schema.TABLES WHERE table_name ='tableName'
AND TABLE_SCHEMA= 'tableSchema';
- 注意,这里的tableSchema指的是MySQL中的schema,可以理解为数据库服务器上的某个数据库,一个数据库服务器可以有多个数据库
- 注意,这个schema一定要给,不然判断时会查找整个数据库服务器,而不是某个特定的数据库
获取某个数据库表中的所有列
select COLUMN_NAME from information_schema.COLUMNS where table_name = 'tableName'
and TABLE_SCHEMA ='tableSchema';
- 同理,这里的schema也要给出,否则获取的列名会是整个数据库服务器上所有同名表的列名的集合,并且这个集合没有去重