精华内容
下载资源
问答
  • 5.1 创建数据库 创建数据库是指在数据库系统中划分一块空间,用来存储相应的数据。 这是进行表操作的基础,也是进行数据库管理的基础。 在MySQL中,创建数据库须通过SQL语句CREATE DATABASE实现的。 语法: ...

    第5章 操作数据库

    数据库是指长期存储在计算机内、有组织的、可共享的数据集合。
    数据库就是一个存储数据的地方。

    5.1 创建数据库

        创建数据库是指在数据库系统中划分一块空间,用来存储相应的数据。
        这是进行表操作的基础,也是进行数据库管理的基础。
        在MySQL中,创建数据库须通过SQL语句CREATE DATABASE实现的。
        语法:
            CREATE DATABASE 数据库名;
        说明:
            “数据库名”参数表示所要创建的数据库的名称。
        注意:
            最后的【;】必须加上
        例如: 
            CREATE DATABASE example;
        补充:
            【SHOW DATABASES;】可以用来显示现在已经存在的数据库
    

    5.2 删除数据库

        语法形式:
            DROP DATABASE 数据库名;
        例如:
            DROP DATABASE example;
        注意:
        删除数据库要慎重。删除数据库会删除数据库中所有的表和表中所有的数据。
        如果确定要删除某一个数据库,可以先将该数据库备份,然后再删除。
    

    5.3 数据库存储引擎

        存储引擎就是表的类型。数据库的存储引擎决定了表在计算机中的存储方式。
    

    5.3.1 MySQL存储引擎简介

        存储引擎的概念是MySQL的特点,而且是一种插入式的存储引擎概念。这决定了MySQL数据库中的表可以用不同的方式存储。
        用户可以选择不同的存储方式、是否进行事务处理等。
        查看MySQL数据库支持的存储引擎类型:
        SHOW ENGINES;
        或:
        SHOW ENGINES \g
        或:
        SHOW ENGINES \G(可以让结果显示更美观)
    
        说明:
            Engine参数指存储引擎名称;
            Support参数说明MySQL是否支持该类引擎,YES表示支持;
            Comment参数指对该引擎的评论;
            Transaction参数表示是否支持事务处理,YES表示支持;
            XA参数表示是否分布式交易处理的XA规范,YES表示支持;
            Savepoints参数表示是否支持保存点,以便事物回滚到保存点,YES表示支持。
            从查询结果可以看出,MySQL支持的存储引擎包括MyISAM、MEMORY、InnoDB、ARCHIVE、MRG_MYISAM等。InnoDB是默认(DEFAULT)存储引擎。
        另一个SHOW语句也可以显示支持的存储引擎的信息:
            SHOW VARIABLES LIKE 'have%';(亲测无效)
        使用SHOW语句查询默认存储引擎:
            SHOW VARIABLES LIKE '%storage_engine%';
            修改默认的存储引擎,可以在my.ini中进行修改。将“default-storage-engine=INNODB”更改为“default-storage-engine=MyISAM”,然后重启服务,修改生效。
    
    5.3.2 InnoDB存储引擎
    InnoDB是MySQL数据库的一种存储引擎。InnoDB给MySQL的表提供了事务、回滚、崩溃修复能力、多版本并发控制的事务安全。
    InnoDB是MySQL上第一个提供外键约束的表引擎。
        特点:
        InnoDB存储引擎中,支持自动增长列AUTO_INCREMENT。自动增长列的值不能为空,且值必须唯一。MySQL中规定自动增长列必须为主键。
        在插入值时:
        如果自动增长列不输入值,则插入的值为自动增长后的值;
        如果输入的值为0或空(NULL),则插入的值也为自动增长后的值;
        如果插入某个确定的值,且该值在前面没有出现过,则可以直接插入。
        InnoDB存储引擎中,支持外键(FOREIGN KEY)。外键所在的表为子表,外键所依赖的表为父表。父表中被子表外键关联的字段必须为主键。当删除、更新父表的某条信息时,子表也必须有相应的改变。
        InnoDB存储引擎中,创建的表的表结构存储在.frm文件中。数据和索引存储在innodb_data_home_dir和inno_data_file_path定义的表空间中。
        优势:
            提供了良好的事务管理、崩溃修复能力、并发控制。
        缺点:
            读写效率较差,占用的数据空间相对比较大。  
    

    5.3.3 MyISAM存储引擎

        MyISAM存储引擎的表存储成3个文件。文件的名字与表名相同。扩展名包括frm、MYD、MYI。
        frm为扩展名的文件存储:表的结构;
        MYD为扩展名的文件存储:数据,是MYData的缩写;
        MYI为扩展名的文件存储:索引,是MYIndex的缩写。
        基于MyISAM存储引擎的表支持3种不同的存储格式。包括:
        静态型,为MyISAM存储引擎的默认存储格式,其字段是固定长度的;
        动态型,包含变长字段,记录的长度不是固定的;
        压缩型,需要使用myisampack工具创建,占用的磁盘空间较小。
    
        优点:
            占用空间小,处理速度快;
        缺点:
            不支持事务的完整性和并发性。
    

    5.3.4 MEMORY存储引擎

        MEMORY存储引擎,使用存储在内存中的内容来创建表,而且所有数据也放在内存中。
        文件存储形式、索引类型、存储周期、优缺点:
        每个基于MEMORY存储引擎的表实际对应一个磁盘文件。该文件名与表名相同,类型为frm类型。该文件中只存储表的结构。而其数据文件,都是存储在内存中。这样有利于对数据的快速处理,提高整个表的处理效率。
        MEMORY存储引擎默认使用哈希(HASH)索引。
        MEMORY表的大小是受到限制的。表的大小主要取决于两个参数,分别是max_rows和max_heap_table_size。
    

    5.3.5 存储索引的选择

    这里写图片描述

        InnoDB、MyISAM、MEMORY这3种存储引擎,不同的特性,选择存储引擎的建议,详见书上。
    

    5.6 常见问题及解答

        1.如何修改默认存储引擎?
        MySQL的安装目录下的my.ini配置文件,文件中的mysqld部分存在“default-storage-engine=INNODB”语句,将该语句改为需要的存储引擎。
        注意:
        该配置文件只有重启服务后才会生效。
        执行SHOW VARIABLES LIKE '%storage_engine%'查看默认存储引擎是否修改成功。
        2.如何选择存储引擎?
    

    参考文献:
    1.《MySQL入门很简单》

    展开全文
  • 基本语法 CREATE(DATABASE|SCHEMA)[IF NOT EXISTS] database_name [COMMENT database_comment] [LOACLTION hdfs_path [WITH DBPROPERTIES (property_name=property_...(DATABASE|SCHEMA):创建数据库关键词 [IF NOT ...

    基本语法
    CREATE(DATABASE|SCHEMA)[IF NOT EXISTS]
    database_name [COMMENT database_comment] [LOACLTION hdfs_path
    [WITH DBPROPERTIES (property_name=property_value,…)];
    逐条讲解
    (DATABASE|SCHEMA):创建数据库关键词
    [IF NOT EXISTS]:如果没有和我们同名的数据库时创建数据库
    [COMMENT database_comment] :添加数据库描述信息
    [LOACLTION hdfs_path:指定数据库所存放的位置
    [WITH DBPROPERTIES (property_name=property_value,…)];为数据库添加键值对信息
    来个例子比较直观:
    创建一个数据名为data 的数据库 要求数据库描述为 test data 并存放在/home/hive下

    create  database if not exists data comment 'test data' location '/home/hive';
    
    展开全文
  • 一、SQL中的语法 1、drop table 表名称 eg: drop table dbo.Sys_Test 2、truncate table 表名称 eg: truncate table dbo.Sys_Test 3、delete from 表名称 where 列名称 = 值 eg: delete from dbo.Sys_Test where ...

    一、SQL中的语法

    1、drop table 表名称 eg: drop table dbo.Sys_Test
    2、truncate table 表名称 eg: truncate table dbo.Sys_Test
    3、delete from 表名称 where 列名称 = 值 eg: delete from dbo.Sys_Test where test=‘test’

    二、drop,truncate,delete区别

    1、drop (删除表):删除内容和定义,释放空间。简单来说就是把整个表去掉.以后要新增数据是不可能的,除非新增一个表。
    drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger)索引(index);依赖于该表的存储过程/函数将被保留,但其状态会变为:invalid。

    2、truncate (清空表中的数据):删除内容、释放空间但不删除定义(保留表的数据结构)。与drop不同的是,只是清空表数据而已。
    注意:truncate 不能删除行数据,要删就要把表清空。

    3、delete (删除表中的数据):delete 语句用于删除表中的行。delete语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存
    以便进行进行回滚操作。
    truncate与不带where的delete :只删除数据,而不删除表的结构(定义)

    4、truncate table 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用delete。
    如果要删除表定义及其数据,请使用 drop table 语句

    5、对于由foreign key约束引用的表,不能使用truncate table ,而应使用不带where子句的delete语句。由于truncate table 记录在日志中,所以它不能激活触发器。

    6、执行速度,一般来说: drop> truncate > delete。

    7、delete语句是数据库操作语言(dml),这个操作会放到 rollback segement 中,事务提交之后才生效;如果有相应的 trigger,执行的时候将被触发。
    truncate、drop 是数据库定义语言(ddl),操作立即生效,原数据不放到 rollback segment 中,不能回滚,操作不触发 trigger。

    三、删除表数据的两种方法:delete和turncate。具体语句如下:

    1、RUNCATE TABLE name :

    删除表中的所有行,而不记录单个行删除操作。 在这个指令之下,表格中的资料会完全消失,可是表格本身会继续存在。

    TRUNCATE TABLE 的语法:TRUNCATE TABLE name ,参数 name 是要截断的表的名称或要删除其全部行的表的名称。

    2、Delete from tablename where 1=1

    1)、delete语法:

    DELETE FROM 表名称 WHERE 列名称 = 值。

    2)、删除所有行:

    可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:DELETE FROM table_name。

    值得一提的是:delete表格之后表格的主键自增不会从一开始,如果设置从一开始,需要执行:
    alter table (表名)auto-increment=1;
    但是用 truncate table (表名) 主键直接回到从一开始,效率更高。

    展开全文
  • 用MySQL创建数据库和数据库表

    千次阅读 2014-04-11 16:36:01
    在《用MySQL创建数据库和数据库表》文章中,我们如何创建一个数据库和数据库表,并知道如何向数据库表中添加记录。 那么我们如何从数据库表中检索数据呢?  1、从数据库表中检索信息  实际上,前面我们已经用到...

    1、使用SHOW语句找出在服务器上当前存在什么数据库: 

    mysql> SHOW DATABASES; 
    +----------+ 
    | Database | 
    +----------+ 
    | mysql | 
    | test | 
    +----------+ 
    3 rows in set (0.00 sec)

    2、创建一个数据库abccs  
    mysql> CREATE DATABASE abccs; 
    注意不同操作系统对大小写的敏感。 
    3、选择你所创建的数据库  
    mysql> USE abccs 
    Database changed 
    此时你已经进入你刚才所建立的数据库abccs. 
    4、 创建一个数据库表  
    首先看现在你的数据库中存在什么表: 
    mysql> SHOW TABLES; 
    Empty set (0.00 sec) 
    说明刚才建立的数据库中还没有数据库表。下面来创建一个数据库表mytable:   我们要建立一个你公司员工的生日表,表的内容包含员工姓名、性别、出生日期、出生城市。 
    mysql> CREATE TABLE mytable (name VARCHAR(20), sex CHAR(1), 
    -> birth DATE, birthaddr VARCHAR(20)); 
    Query OK, 0 rows affected (0.00 sec)

    由于name、birthadd的列值是变化的,因此选择VARCHAR,其长度不一定是20。可以选择从1到255的任何长度,如果以后需要改变它的字长,可以使用ALTER TABLE语句。);性别只需一个字符就可以表示:"m"或"f",因此选用CHAR(1);birth列则使用DATE数据类型。 
    创建了一个表后,我们可以看看刚才做的结果,用SHOW TABLES显示数据库中有哪些表: 
    mysql> SHOW TABLES; 
    +---------------------+ 
    | Tables in menagerie | 
    +---------------------+ 
    | mytables | 
    +---------------------+

    5、显示表的结构:  
    mysql> DESCRIBE mytable; 
    +-------------+-------------+------+-----+---------+-------+ 
    | Field | Type | Null | Key | Default | Extra | 
    +-------------+-------------+------+-----+---------+-------+ 
    | name | varchar(20) | YES | | NULL | | 
    | sex | char(1) | YES | | NULL | | 
    | birth | date | YES | | NULL | | 
    | deathaddr | varchar(20) | YES | | NULL | | 
    +-------------+-------------+------+-----+---------+-------+ 
    4 rows in set (0.00 sec)

    6、 往表中加入记录  
    我们先用SELECT命令来查看表中的数据: 
    mysql> select * from mytable; 
    Empty set (0.00 sec)
    这说明刚才创建的表还没有记录。 加入一条新记录: 
    mysql> insert into mytable 
    -> values (′abccs′,′f′,′1977-07-07′,′china′); 
    Query OK, 1 row affected (0.05 sec)

    再用上面的SELECT命令看看发生了什么变化。我们可以按此方法一条一条地将所有员工的记录加入到表中。 
    7、用文本方式将数据装入一个数据库表  
    如果一条一条地输入,很麻烦。我们可以用文本文件的方式将所有记录加入你的数据库表中。创建一个文本文件“mysql.txt”,每行包含一个记录,用定位符(tab)把值分开,并且以在CREATE TABLE语句中列出的列次序给出,例如: 
    abccs f 1977-07-07 china   
    mary f 1978-12-12 usa 
    tom m 1970-09-02 usa

    使用下面命令将文本文件“mytable.txt”装载到mytable表中:mysql> LOAD DATA LOCAL INFILE "mytable.txt" INTO TABLE pet; 
    再使用如下命令看看是否已将数据输入到数据库表中:mysql> select * from mytable;

    展开全文
  • hive创建数据库

    千次阅读 2014-12-05 16:25:32
     Databases in Hive ...2.创建数据库的语法很简单: hive> create databasefinancials;    如果financials存在的话,就会抛出错误,可以这样: hive> create databases IF NOT EXISTS financials; 3
  • 第67篇 PHP MySQL连接创建数据库及表

    千次阅读 2017-02-05 07:50:55
    关键词:PHP MySQL简介, PHP连接mysql,php创建mysql数据库,php创建mysql表 一、PHP MySQL 1.1 PHP MySQL简介 语句 setnames utf8;用于设定数据库编码,让中文可以正常显示。 1.2 PHP 连接 MySQL PHP 5 及...
  • 创建数据库这样做就可以创建一个数据库:CREATE DATABASE数据库名称创建一个表这样做就可以创建一个数据库中的表:CREATE TABLE表名 ( 列名称1数据类型, 列名称2数据类型, ....... ) 实例本例演示如何创建名为...
  • 数据库基础

    2021-05-07 15:40:33
    #创建数据库 关键词:create 用法:create database database_name; 注意: *假如要建立的数据库已经存在怎么办? 解析:先判断是否存在,存在的话就删除该数据库,不存在就直接创建。 代码:drop database if ...
  • 本例演示如何创建名为 "Person" 的表,有四个列。列名是:"LastName"、"FirstName"、"Address" 以及 "Age":CREATE TABLE Person ( LastName varchar, ...
  • 用CREATE DATABASE语句创建数据库

    千次阅读 2010-10-10 12:43:00
    在查询分析器中,使用CREATE DATABASE语句创建数据库,语法:Code: CREATE DATABASE 数据库名称 ON PRIMARY ( NAME=数据文件的逻辑名称,
  • 创建mysql数据库

    2016-12-22 10:27:28
    一、创建一个数据库 create database 数据库名 [其他选项]; 例如我们需要创建一个名为 samp_db 的数据库, 在命令行下执行以下命令: create database samp_db character set gbk;将数据库字符编码指定为 gbk,在命令...
  • /* function create_siteinfo DONE:网站信息表 Author:www.5dkx.com DATE:2010-3-30 表结构: title 网站名 keyword 网站关键词 description 网站描述 */ function create_siteinfo() { global $conn; $sql = ...
  • 摘要: 本文阐述了在VB程序中利用ADO对象动态创建数据库和数据表的方法,这些方法在开发VB数据库应用程序中很有实用价值,它可以提高数据库程序灵活性。 关键词:数据库、数据表、ADO、ADOX 1: 问题的提出 在...
  • 创建数据库 这样做就可以创建一个数据库:CREATE DATABASE 数据库名称创建一个表 这样做就可以创建一个数据库中的表:CREATE TABLE 表名称 ( 列名称1 数据类型, 列名称2 数据类型, ....... ) ...
  • 软件:mysql 关键词:创建/查看数据库;...接下来直接创建数据库表遇到此错误: ERROR 1046 (3D000): No database selected 这表明创建表未选择数据库 选择数据库: mysql> use myschool; 选择成
  • 3,使用命令查看系统中已有的数据库,看看有哪些系统数据库,有哪些用户数据库。4,选择mysql数据库为当前数据库5,查看mysql数据库中存储用户信息的表user的内容6,查看MySQL中的各级字符编码...
  • MySQL创建数据库与表

    千次阅读 2016-09-28 16:19:50
    我们可以使用creat来创建一个数据库数据库名称一般可以任意 mysql> CREATE DATABASE menagerie; 为了使menagerie成为当前的数据库,使用use命令来使用它: mysql> USE menagerie (3),创建表 就...
  • 创建数据库这样做就可以创建一个数据库:CREATE DATABASE database_name创建一个表这样做就可以创建一个数据库中的表:CREATE TABLE table_name(column_name1 data_type,column_name2 data_type,.......)实例本例...
  • 摘要: 本文阐述了在VB程序中利用ADO对象动态创建数据库和数据表的方法,这些方法在开发VB数据库应用程序中很有实用价值,它可以提高数据库程序灵活性。关键词:数据库、数据表、ADO、ADOX1: 问题的提出在Visual ...
  • Oracle创建用户 数据库

    2019-03-06 09:22:55
    一、登录Oracle和创建用户 1. 使用最高权限用户(sys)首次登录 sqlplus sys/dwh as sysdba; sqlplus:oracle登录命令 sys/dwh:sys是用户名,dwh是密码 as sysdba:因为sys是最高管理员,所以需要加这句话 2. ...
  • $con = mysql_connect("localhost","root","881017"); if (!$con) { die('Could not connect: ' . mysql_error()); } if (mysql_query("CREATE DATABASE madserver20",$con)) { echo "Database created";...
  • 首先我们要创建数据库模式。对于这个应用来说,一张表就足够了,而且只需支持 SQLite,所以会很简单。只需要把下面的内容放进一个名为 schema.sql 的文件,放在刚才创建的 flaskr 文件夹中: drop table if exists...
  • mysql数据库与表的创建

    千次阅读 2018-10-15 10:03:30
    1、创建数据库  创建数据库语句:create database [IF NOT EXISTS] db_name [create_specification] 2、选项说明:  IF NOT EXISTS:如果要创建的数据库存在,创建时没有加此语句会报错。  create_...
  • create table t_test_table (  id varchar(32)  binary  not null ,  name varchar(32)  binary ,  primary key (id) ...在创建表时,对需要区分大小写的列采用 binary 关键词
  • 一、SQL语法 SQL关键字 1、SELECT 从数据库中提取数据,结果被存在一个结果表中(结果集) 2、UPDATE 更新(修改)数据库中的数据 ...创建新的数据库 6、ALTER DATEBASE 修改数据库 7、CREATE TABLE ...
  • 第6章 创建、修改和删除表 表是数据库存储数据的基本单位。 一个表包含若干字段或记录。 表的操作包括创建新表、修改表和删除表。 本章将讲解如何在数据库中操作表,包括: 创建表的方法; 表的完整性约束条件...
  • mysql数据库的基本语句及关键词

    千次阅读 2018-06-12 09:35:04
    mysql 是一个小型的数据库,相较oracle简单,语句也少很多,下面简单的介绍一下基本的语句:1.首先登入数据库(在cmd窗口进行操作)输入:mysql -u root -p继续按回车1.建立一个数据库create datebase lala;(数据库...
  • 第 5 章 数据库 5.1 SQL 数据库 5.2 NoSQL 数据库 5.3 使用 SQL 还是 NoSQL 5.4 Python 数据库框架 5.5 使用 Flask-SQLAlchemy 管理数据库 5.6 定义模型 模型 这个术语表示程序使用的 持久化...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 60,563
精华内容 24,225
关键字:

创建数据库的关键词