创建和删除数据库
Joe 在开发机上创建了一个名为 goods 的数据库,做了一些练习,现在他需要删除这个数据库,重建一个 goods。那么他需要的步骤是:
 
 答案是:A
 创建数据库的语法格式如下:
CREATE DATABASE database_name
CREATE DATABASE IF NOT EXISTS database_name
 
BD是make,语法错误;
 题目已经告知存在goods数据库,所以不需要再做exists判断了。
创建表
Joe 想要在 goods 数据库创建一个 goods_category 表,管理商品的类别,那么正确的建表语句应该是:
 
 
 答案是:A
 MySQL中创建数据表需要遵循一定的语法格式,这些语法格式为创建数据表提供了模板依据。同时,遵循一定的语法格式创建数据表,也降低了出错的概率。
 在MySQL中创建表使用的是CREATE TABLE语句,语法格式如下:
CREATE TABLE [IF NOT EXISTS] 表名(
  字段1 数据类型 [约束条件] [默认值],
  字段2 数据类型 [约束条件] [默认值],
  字段3 数据类型 [约束条件] [默认值],
  ……
  [表约束条件]
  );
 
自增字段
Joe 需要重建一个 id 为自增字段的 goods_category 。他已经删除了旧表,那么接下来应该:
 
 
 答案是:D
 MySQL支持将整数类型的主键设置为默认递增类型,这样在向数据表插入数据时,可以不用指定整数类型主键的值,MySQL会将该表的整数类型的主键值自动加1。
 MySQL中设置整数类型的主键值默认递增的语法格式如下:
字段名称 数据类型 PRIMARY KEY AUTO_INCREMENT
 
删除表
Joe 想要删除数据库中的 good_category 表,他应该怎么操作?
 
答案是:D
 在MySQL中,当一张数据表没有与其他任何数据表形成关联关系时,可以将当前数据表直接删除。
 删除没有关联关系的数据表的语法格式如下:
DROP TABLE [IF EXISTS] 数据表1 [, 数据表2, …, 数据表n]
 
选项A是删除表中name字段值为good_category的行
数据库编码
Joe 希望 goods 数据库可以处理各种不同语言文字的内容,因此他要确定 goods 数据库的编码,确保其为 ut8,下面哪些步骤是他需要做的?
 (这里我们假设Joe第一次查看编码时,发现 goods 现在的编码为 latin1 )。
1.执行 SHOW CREATE DATABASE goods; 查看 goods 的编码
 2.备份数据库
 3.取消默认编码 ALTER DATABASE goods CHARACTER UNSET;
 4.执行 ALTER DATABASE goods CHARACTER SET utf8; 设定编码
 5.删除 goods 数据库 DROP DATABASE goods
 6.用 utf8 编码重建 goods 数据库 CREATE DATABASE goods DEFAULT CHARACTER SET utf8
 7.删除默认编码 ALTER DATABASE goods DROP CHARACTER
 8.再次执行 SHOW CREATE DATABASE goods; 查看 goods 的编码
 9.导入数据
 
 答案是:D
 在MySQL中,会为创建的每个数据库指定一个字符编码。如果在创建数据库时没有为数据库指定字符编码,则MySQL会为数据库指定一个默认的字符编码,这个默认的字符编码在MySQL的配置文件my.cnf中进行配置。
 修改数据库的字符编码的语法格式如下:
ALTER DATABASE database_name CHARACTER SET character_name collate collate_name;
                

















