SQL基础学习_01_数据库和表
SQL语句及其种类
1. SQL语句分为三类:
DDL(Data Definition Language): CREATE、DROP、ALTER;
DML(Data Manipulation Language): SELECT、INSERT、UPDATE、DELETE;
DCL(Data Control Language): COMMIT、ROLLBACK、GRANT、REVOKE;
2. SQL语句的基本书写规则:
SQL语句要以分号(;)结尾;
SQL语句不区分大小写,但是插入到表中的数据是区分大小写的;
单词之间使用半角空格隔开;
表的创建、删除和更新
1. 创建数据库和表:
使用CREATE语句创建数据库:
CREATE DATABASE shop;
该语句创建一个名为shop的数据库,使用该数据库:
USE shop (MySQL)
使用CREATE语句创建表:
CREATE TABLE <表名>(
<列名1> <数据类型> <该列所需约束>,
<列名2> <数据类型> <该列所需约束>,
<列名3> <数据类型> <该列所需约束>,
…
<该表的约束1>, <该表的约束2>, ...
);
示例:
CREATE TABLE Shohin(
shohin_id CHAR(4) NOT NULL,
shohin_mei VARCHAR(100) NOT NULL,
shohin_bunrui VARCHAR(32) NOT NULL,
hanbai_tanka INTEGER ,
shiire_tanka INTEGER ,
torokubi DATE ,
PRIMARY KEY (shohin_id)
);
创建好后,查看表的定义内容:
SHOW COLUMNS from Shohin; (MySQL)
2. 命名规则:
1. 数据库名称,表名、列名都使用半角英文字母、半角数字、下划线组成,并且以半角英文字母开头;
2. 同一个数据库中不能有同名表,同一个表中不能有同名列;
3. 表的删除,使用DROP语句可以删除表格和数据库:
DROP TABLE <表名>;
DROP DATABASE <数据库名>;
表在删除后无法恢复;
4. 表定义的更新:
使用ALTER语句更新表的定义:
ALTER TABLE <表名> ADD COLUMN <列的定义>;
如: ALTER TABLE Shohin ADD COLUMN shohin_mei_kana VARCHAR(100);
ALTER TABLE <表名> DROP COLUMN <列名>;
如 ALTER TABLE Shohin DROP COLUNM shohin_mei_kana;
ALTER TABLE <表名> MODIFY <列名> <修改后的定义>;
如 ALTER TABLE Shohin MODIFY id integer auto_increment;
5. 修改表名:
标准SQL并没有RENAME,各个数据库更改表名的语句分别为:
Oracle/PostgreSQL: ALTER TABLE Sohin RENAME TO Shohin;
DB2: RENAME TABLE Sohin TO Shohin;
SQL Server: sp_rename ’Sohin’, ’Shohin’;
MySQL: RENAME TABLE Sohin TO Shohin;
6. 向表中插入数据:
使用INSERT语句向表中插入数据:
INSERT INTO <表名> VALUES <每列的内容>;
如: INSERT INTO Shohin Values('0001','T-shirt','clothes',1000,500,'2009-09-20’);
通过 SELECT * FROM Shohin查看表记录
SQL基础学习_01_数据库和表的更多相关文章
- SQL 基础学习(2) Joining 和function , 作业没有做,需要看百宝箱。NOsql的概念
SQL 基础学习(2) Joining 可以同时关联(joining)多张表进行复杂的查询. 相比于用Rails捞出数据再用Ruby进行过滤组合,使用SQL更加高效,节能. 以下是 users has ...
- Oracle SQL 基础学习
oracel sql 基础学习 CREATE TABLE USERINFO ( ID ,) PRIMARY KEY, USERNAME ), USERPWD ), EMAIL ), REDATE DA ...
- SQL Server中查询数据库及表的信息语句
/* -- 本文件主要是汇总了 Microsoft SQL Server 中有关数据库与表的相关信息查询语句. -- 下面的查询语句中一般给出两种查询方法, -- A方法访问系统表,适应于SQL 20 ...
- day 46 Django 学习3 数据库单表操作以及反向解析
前情提要: Django 已经学了不少了, 今天学习链接数据库的操作.以及相关的反向解析等 一:反向解析 1:反向解析模板层 跳转时设定url会随着前面的路由改变而改变 2:反向解析之 ...
- SQL Server 动态生成数据库所有表Insert语句
一. 背景 SQL Server,如果我们需要把数据库A的所有表数据到数据库B中,通常我们会怎么做呢?我会使用SSMS的导入导出功能,进行表数据的导入导出,无可厚非,这样的导入非常简单和方便: 但是, ...
- SQL基础学习_04_视图
视图 1. 视图的创建 视图就是保存好的SELECT语句,这些SELECT语句执行之后会产生新的表,所以在SQL中,视图和表是不做差别对待的,也就是SQL也可以对视图做一些操作: 由于 ...
- sql server新旧数据库的表结构差异
sql server编写通用脚本自动检查两个不同服务器的新旧数据库的表结构差异 问题:工作过程中,不管是什么项目,伴随着项目不断升级版本,对应的项目数据库业务版本也不断升级,数据库出现新增表.修改表. ...
- SQL Serever学习11——数据库的安全管理
公司管理软件设计完成,但是日常工作繁忙,向领导提出增加几个管理员,帮助管理和维护系统,领导同意了,但是要求一定要管理好这几个管理员用户,保证数据库的安全. 修改身份验证模式 数据库验证机制 sqlse ...
- Linux基础学习-MariaDB数据库管理系统
数据库管理系统 数据库是指按照某些特定结构来存储数据资料的数据仓库,数据库管理系统是一种能够对数据库中存放的数据进行建立.修改.删除.查找.维护等操作的软件程序. 初始化MariaDB服务 [root ...
随机推荐
- ERROR: unable to bind listening socket for address ’127
ERROR: unable to bind listening socket for address '127.0.0.1:9000′ 解决办法: killall php-fpm 然后重启即可. 我的 ...
- mshta 反弹shell
kali系统准备: 复制以下ruby代码到/usr/share/metasploit-framework/modules/exploits/windows/smb/msh_shell.rb目录(要注意 ...
- 全本 | iKcamp翻译 | 《JavaScript 轻量级函数式编程》|《你不知道的JS》姊妹篇
原文地址:Functional-Light-JS 原文作者:Kyle Simpson - <You-Dont-Know-JS>作者 译者团队(排名不分先后):阿希.blueken.bruc ...
- POST和GET有什么区别?
1. GET主要用于从服务器查询数据,POST用于向服务器提交数据 2. GET通过URL传递数据,POST通过http请求体传递数据 3. GET传输数据量有限制,不能大于2kb,POST传递的数据 ...
- Linux基础-最基础
Linux基础 为了更好的学习知识,开通此博客,以前博客丢了...记录一下知识点,希望能在这里与大家互相学习交流. 20171113 14:00 Linux基础-基本知识 Linux树状文件系统结构 ...
- 关于hash和ico的一些关联
最近測试提出一个bug.说某几个页面中的ico不显示,于是针对此问题排查原因. 首先,确保页面中的link已引入favicon.ico. 经查看,发现是js中的location.hash导致了ico不 ...
- android checkbox 未选中状态 已选中状态 替换成自己的图片
效果图: 未选中状态: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...
- Javaproject集成log4j 2.x
log4j2和log4j在配置文件和引入jar包上出现了不同.这里做个备忘,这里使用的版本号为apache-log4j-2.3-bin.zip. 1.apache-log4j-2.3-bin.zip下 ...
- css怎样让背景充满整个屏幕
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 转:java泛型总结
转自:http://www.cnblogs.com/lwbqqyumidi/p/3837629.html 一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: 1 public ...