数据库和表的基本操作
发布时间:2023-01-07 12:51:40 所属栏目:MySql教程 来源:
导读: 数据库和表的基本操作 数据库的基本操作
MySQL安装后,系统会自动创建几个必须的数据库,MySQL数据库的系统信息都存在数据库中。若删除这些系统数据库,MySQL就不能正常工作。
1、创建数据库
MySQL安装后,系统会自动创建几个必须的数据库,MySQL数据库的系统信息都存在数据库中。若删除这些系统数据库,MySQL就不能正常工作。
1、创建数据库
|
数据库和表的基本操作 数据库的基本操作 MySQL安装后,系统会自动创建几个必须的数据库,MySQL数据库的系统信息都存在数据库中。若删除这些系统数据库,MySQL就不能正常工作。 1、创建数据库 基本SQL语法格式为: CREATE DATABASE 数据库名; 数据库命名注意:MySQL命令解释器对大小写不敏感,数据库名无论用户输入的是大写还是小写,MySQL命令解释器都是为小写,但是必须符合操作系统文件夹命名规则。 例如,创建一个名为Bookstore的数据库命令: CREATE DATABASE Bookstore; 需要查看新建的数据库以及已经存在的数据库使用命令: SHOW DATABASES; 2、打开数据库 命令: USE 数据库名; 例如,若要对Bookstore数据库进行操作,可以执行命令: USE Bookstore; 3、删除数据库 命令: DROP DATABASE 数据库名; 注意:DROP DATABASE命令必须小心使用,因为它将永久删除指定的整个数据库信息,包括数据库中的所有表和表中的所有数据。 数据表的基本操作 数据表是由多列、多行组成的表格,数据表包括表结构部分和记录部分,是相关数据的集合。创建数据表的过程是规定数据列的属性的过程,同时也是实施数据完整性(包括实体完整性、引用完整性和域完整性等)约束的过程。 1、创建数据库表 数据表属于数据库,在创建数据表之前,应该使用语句“USE 数据库名;”指定操作是在哪个数据库中进行,如果没有选择数据库,就会抛出“No database selected”的错误。 创建表使用CREATE TABLE命令。 语法格式: CREATE TABLE 表名 ( 列名 数据类型 [列级别约束条件] [默认值], 列名 数据类型 [列级别约束条件] [默认值], ...... )ENGINE = 存储引擎; 表名,要创建的表的表名。该表名必须符合标志符规则,如果有MySQL保留字则必须用单引号括起来。 列名,表中列的名宇。列名必须符合标志符规则,长度不能超过 64个字符,而且在表中要唯一。如果有MySQL 保留字则必须用单引号括起来。 数据类型,列的数据类型,有的数据类型需要指明长度n,并用括号括起。 ENGINE= 存储引擎,MySQL 支持数个存储引擎作为对不同表的类型的处理器,使用时要用具体的存储引擎代替存储引擎,如ENGINE=InnoDB。 MySQL 支持的存储引擎有 MyISAM,用来管理非事务表。它提供高速存储和检索以全文搜索能力。 例如,设已经创建了数据库 Bookstore,在该数据库中创建图书目录表 Book。 USE Bookstore; CREATE TABLE Book ( ID char(20) NOT NULL PRIMARY KEY, type varchar(20) NOT NULL DEFAULT 'computer', name varchar(40) NOT NULL, author char(10) NOT NULL, price float(5) NOT NULL, num int(5) )ENGINE = InnoDB; PRIMARY KEY表示将“ID”字段定义为主键。“DEFAULT ‘computer’”表示“type”的默认值为’computer’。 ENGINE=InnoDB 表示采用的存储引擎是 InnoDB, InnoDB是MySQL 在Windows 平合默认的存储引擎,因此 ENGINE=InnoDB 可以省略。 2、修改表 ALTER TABLE用于更改原有表的结构。 向表中增加新列使用ADD[COLUMN]子句。例如,在表t1中增加新的一列a: ALTER TABLE t1 ADD COLUMN a TINYINT NULL; ALTER TABLE t1 ADD COLUMN a TINYINT FIRST;/*在表的第一列添加新列*/ ALTER TABLE t1 ADD COLUMN a TINYINT AFTER c;/*在表的指定列c之后添加新列*/ 修改列的名称使用CHANGE[COLUMN]子句。重命名时,需给定旧的列名称和新的列名称及数据类型。例如,要把一个INTEGER列的名称从a变更到b: ALTER TABLE t1 CHANGE a b INTEGER; 修改指定列的类型使用MODIFY[COLUMN]子句。例如,把一个列的数据类型改为bigint: ALTER TABLE t1 MODIFY b bigint NOT NULL; 删除表中列或约束使用DROP子句。 ALTER TABLE t1 DROP COLUMN a; 修改该表名使用RENAME子句。例如,将表t1改名为t2: ALTER TABLE t1 RENAME TO t2; 3、复制表 当需要建立的数据库表与已有的数据库表的结构相同时,可以采用复制表的方法复制现有数据库表的结构,也可以复制表的结构和数据。 语法格式: CREATE TABLE 新表名 [LIKE 参照表名] |[AS(SELECT语句)] LIKE, 使用 LIKE 关键宇创建一个与参照表名相同结构的新表,列名、数据类型、空指定和索引也将复制,但是表的内容不会复制,因此创建的新表是一个空表。 AS,使用 AS 关键字可以复制表的内容,但索引和完整性约束是不会复制的。SELECT 语句表示一个表达式数据库查询操作,例如,可以是一条 SELECT 语句 假设数据库 Bookstore 中有一个表 Book,创建与 Book 表结构相同的名为book_copy1的拷贝。 CREATE TABLE book _copy1 LIKE Book; 若在复制结构的同时还要复制其数据,需要使用 AS 关键字,使用 SELECT 语句对需要复制的数据进行选择。 创建表 Book 的一个名为book copy2 的副本,并且复制其内容。 CREATE TABLE book_copy2 AS (SELECT * FROM Book); 4、删除表 需要删除一个表时可以使用 DROP TABLE 语句。 语法格式: DROP TABLE 表名1[,表名2]… 5、显示数据表信息 显示数据表文件名 SHOW TABLES 命令用于显示已经建立的数据表文件。 语法格式: SHOW TABLE 例如,显示Bookstore 数据库建立的数据表文件。 USE Bookstore; SHOW TABLES; 显示数据表结构 DESCRIBE 语句用于显示表中各列的信息,其运行结果等同于 SHOW COLUMNS FROM 语句。 语法格式: {DESCRIBE | DESC} 表名[列名|通配符] DESCRIBE | DESC, DESC 是DESCRIBE 的简写,二者用法相同。 列名|通配符,可以是一个列名称,或一个包含%和_的通配符的字符串,用于获得对于带有与字符串相匹配的名称的各列的输出。没有必要在引号中包含字符串,除非其中包含空格或其他特殊字符。 例如,用DESCRIBE 语句查看 Book 表的列的信息。 DESCRIBE Book; 查看 Book 表的ID列的信息。 DESCRIBE Book ID; (编辑:我爱资讯网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


