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 ...
随机推荐
- Mac下CUDA开启及Tensorflow-gpu安装
本文由@ray 出品,转载请注明出处. 文章链接:http://www.cnblogs.com/wolfray/p/8040694.html 在之前的文章中,笔者介绍了在Mac下安装Tensorfl ...
- Codeforces 869C The Intriguing Obsession
题意:有三种颜色的岛屿各a,b,c座,你可以在上面建桥.联通的点必须满足以下条件:1.颜色不同.2.颜色相同且联通的两个点之间的最短路径为3 其实之用考虑两种颜色的即可,状态转移方程也不难推出:F[i ...
- Android测试:Fundamentals of Testing
原文地址:https://developer.android.com/training/testing/fundamentals.html 用户在不同的级别上与你的应用产生交互.从按下按钮到将信息下载 ...
- Linux多线程编程——线程的同步
POSIX信号量 posix信号量不同于IPC中的信号量 常用的posix信号量函数 #include <semaphore.h> int sem_init(sem_t* sem,i ...
- Spring的Bean内部方法调用无法使用AOP切面(CacheAble注解失效)
Spring的Bean内部方法调用无法使用AOP切面(CacheAble注解失效) 前言 今天在使用Spring cache的Cacheable注解的过程中遇见了一个Cacheable注解失效的问题, ...
- JAVA-UML
UML(UnifiedModelingLanguage)(统一建模语言或标准建模语言) 它是模型化的软件系统开发图形语言 为软件开发所有阶段提供模型化,可视化支持 UM2.2中定义了14中图示 三种常 ...
- Python 项目实践一(外星人入侵小游戏)第三篇
今天是圣诞节,公司放假一天,趁着有空,学习了一下午,多写一篇博客吧! 接着上节的继续学习, 一 重构:模块game_functions 在大型项目中,经常需要在添加新代码前重构既有代码.重构旨在简化既 ...
- Linux CentOS完全卸载PHP
很无语,CentOS居然php版本才5.1.6,很多开源的CMS无法安装. 查看php版本命令: #php -v 下面的命令是删除不干净的 #yum remove php 因为使用这个命令以后再用 # ...
- 自学Zabbix1.2-zabbix特性
Zabbix是一个高度集成的网络监控套件,通过一个软件包即可提供如下特性. 概述 Zabbix是一个高度集成的网络监控套件,通过一个软件包即可提供如下特性 数据收集 可用性及性能检测 支持SNMP(t ...
- 「mysql优化专题」90%程序员没听过的存储过程和存储函数教学(7)
一.MYSQL储存过程简介(技术文): 储存过程是一个可编程的函数,它在数据库中创建并保存.它可以有SQL语句和一些特殊的控制结构组成.当希望在不同的应用程序或平台上执行相同的函数,或者封装特定功能时 ...