【数据库】SQL语言基础

这篇具有很好参考价值的文章主要介绍了【数据库】SQL语言基础。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

基本数据类型与数据定义

SQL:结构化查询语言。使用SQL命令,给出几个用户参数,系统根据这些参数从底层数据库提取结果。这个过程是封装了的,结构化的。其主要功能概括为:

  • 数据定义功能:create , drop, alter 对表头结构的建,删,改

  • 数据查询:select 最主要应用的,最复杂部分

  • 数据操纵:insert , update ,delete 数据内容增,改,删

  • 数据控制: grant,revoke,deny 授权用户权限控制

SQL SERVER 中基本数据类型

数值型

1.准确型:能精确存储数据,如整数,定点小数

  • int 4字节,表示范围: -2^31~ 2^31-1

  • bigint 8字节

  • smallint 2字节

  • tinyint : 1字节,且是无符号数,表示0-255

  • numeric(p,q) 小数,指定最多为p位,其中有q位小数,如表示0-100.0之间的数学成绩,有一位小数

注意:尽量避免定义float ,为避免精度丢失问题,应该使用 :数学 numeric(4,1)

如定义身高以米为单位,两位小数: 身高 numeric(3,2)

2.近似型:

  • float 8字节 —类似C中的double

  • real 型, 4字节 —类似C中的float

数据库中少用近似型,多用准确型

字符串型 string

一个字符包括英文,其它非英文如中文汉字。早期一个英文字符占1B,一个汉字占2B,在计算串长时易错。后来全世界的字符统一编码,不管是什么字符都统一为2B内码。任何变量要定义,如早期char[20] 是定长串,是否用完都是占20个字节,存在浪费,好处是数据定长,便于随机查找。如个人信息的备注内容,长度差别巨大,一般使用变长串,用多少字节占多少空间,如早期串指针。

常用的数据库中字符串类型:

  • Char(n) n取值 1-8000 普通编码, 定长

  • Nchar(n) 统一字符编码,n取值1-4000 定长

  • Varchar(n ) n取值1-8000,变长串

  • Nvarchar(n) n取值1-4000, 统一字符编码的变长串

如:定义一个姓名列,性别列,个人说明列

姓名: char(6), nchar(6)
性别:char(1), nchar(1)   f /m , 1/0,/女
个人说明: varchar(100), nvarchar(100) /*每个人说明情况内容长度差别大,故使用变长串,反而节约空间.*/
Text , Ntext /*可存储海量字符,如小说的内容,最多20亿个字符(10亿个汉字)*/

总结:变长串nchar( ) , 变长串nvarchar( ),

长篇内容使用Ntext,如果列是数字或英文字母char( )

日期时间型

  • Datetime : 占8字节空间来存放一个标准的日期时间,早支持1753年:如:1999-12-1 12:33:55 12.332

  • Smalldatetime 占四字节,只支持 1900-1-1 -2079年

前者支持到毫秒,后者支持到分钟

说明:一个日期是相对于1900-1-1的间隔天数,一个日期对应的是一个整数。所以日期其实是一个整数,使用公式显现成一个日期格式.

今天的78天后是哪一天?

select GETDATE()+78

时间是一个相对于当天从00:00:00开始的秒数.

特别注意: 字符串常量,日期时间常量在sqlserver用单引号

时间间隔计算:t2-t1得间隔秒数

binary image型

常用于存放二进制的文件内容,如一个WORD文件,一张照片

数据定义

建立数据库建立表,修改表的结构(不涉及到表的内容操作)

建立基本表

Create table 表名(列名及参数和约束 )

例:建立一个课程表

create table 课程表( 
课程号 char(3),课程名 nchar(12),学分 tinyint ,
开课学期 tinyint,课程说明 nvarchar(200)
)

修改表结构 modify structure

对表名进行变更,弄不好有可能造成大量旧数据内容丢失。

主句: alter table 表名 修改子句

(1)向已有表增加新列

Alter table 表名 add 字段名及参数

例:向上面的课程表增加一列 所属专业编号

 alter table 课程表 add 所属专业 nchar(5)

例:一次性同时增加多列,如向课程表增加开课学院,任课老师

alter table 课程表 add 开课学院 nchar(10),任课教师 nchar(6)

(2)删除表中的原有列

Alter table 表名 drop column 列名

alter table 课程表 drop column 开课学院,任课教师

(3)修改已有列的字段列参数(不能改列名,只能修改类型,宽度,约束)

Alter table 表名 alter column 列名(参数)

例:把所属专业列的nchar(5)改为char(20)

alter table 课程表 alter column 所属专业 char(20)

(4)更名基本表:

例: 把原2表全部表头和内容复制3表,再把2表删除掉

 Select * into 课程表3 from 课程表2 
 Drop table 课程表2

(5)对已有列更名

例:假设原表课程表2已有大量数据,不可能重新建表,现要把”所属专业”改为“从属专业”;

alter table 课程表 add 从属专业 char(20)
update 课程表 set 从属专业=所属专业

alter table 课程表 drop column 所属专业
select * from 课程表

又如:把学生表的生日列修改为“出生日期”列:文章来源地址https://www.toymoban.com/news/detail-443985.html

alter table 学生表 add 出生日期 sm

到了这里,关于【数据库】SQL语言基础的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • AIGC基础:大型语言模型 (LLM) 为什么使用向量数据库,嵌入(Embeddings)又是什么?

    嵌入: 它是指什么?嵌入是将数据(例如文本、图像或代码)转换为高维向量的数值表示。这些向量捕捉了数据点之间的语义含义和关系。可以将其理解为将复杂数据翻译成 LLM 可以理解的语言。 为什么有用?原始数据之间的相似性反映在高维空间中对应向量之间的距离上。

    2024年02月21日
    浏览(42)
  • 2023届计算机保研面试基础专业问题(数据结构、算法、计算机语言、计算机网络、数据库、操作系统、数学)

    以下的专业相关基础问题,是在2022年暑期准备面试过程中,断断续续准备的,最终上岸厦大啦,也希望这些内容对后面准备保研的学弟学妹们有帮助。少即是多、快即是慢,希望大家也不必太焦虑,慢慢来比较快! 堆、栈、队列、链表等数据结构 树:红黑树、二叉树的各类

    2024年02月15日
    浏览(38)
  • 【Mysql】万字长文带你快速掌握数据库基础概念及SQL基本操作

    为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章中如果有记录错误,欢迎读者朋友们批评指正。 (博客的参考源码可以在我主页的资源里找到,如果在学习的

    2024年02月15日
    浏览(45)
  • Go语言基础之基本数据类型

    Go语言中有丰富的数据类型,除了基本的整型、浮点型、布尔型、字符串外,还有数组、切片、结构体、函数、map、通道(channel)等。Go 语言的基本类型和其他语言大同小异。 整型 整型分为以下两个大类: 按长度分为:int8、int16、int32、int64 对应的无符号整型:uint8、uint1

    2024年02月12日
    浏览(34)
  • 数据结构基础篇》》用c语言实现复数的八个基本运算

    数据结构开讲啦!!!🎈🎈🎈 本专栏包括: 抽象数据类型 线性表及其应用 栈和队列及其应用 串及其应用 数组和广义表 树、图及其应用 存储管理、查找和排序 将从简单的抽象数据类型出发,深入浅出地讲解复数,海龟作图 到第二讲线性表及其应用中会讲解,运动会分数

    2024年02月07日
    浏览(36)
  • 数据库基本概念和SQL基本语句

    数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。在数据库中,数据通常以表格的形式存储,这些表格包含了行和列。行通常代表记录,而列代表记录中的不同字段。数据库的设计允许对数据进行高效地查询、更新、删除和添加操作。 基本概念: 数据(Da

    2024年04月22日
    浏览(41)
  • VB.net:VB.net编程语言学习之ADO.net基本名称空间与类的简介、案例应用(实现与SQL数据库编程案例)之详细攻略

    VB.net:VB.net编程语言学习之ADO.net基本名称空间与类的简介、案例应用(实现与SQL数据库编程案例)之详细攻略 目录 ADO.net基本名称空间与类 1、ADO.net六个基础名称空间 2、ADO.net类

    2024年02月06日
    浏览(32)
  • SQL 数据库基本操作

    打开 SSMS(Microsoft SQL Server Management Studio),“对象资源管理器” 窗口列表中依次双击 “UERE-20220228OY” → ”数据库“ → ”系统数据库“ (”UERE-20220228OY“ 是系统连接的服务器名称,不同的计算机中名称不尽相同),在展开的列表中可看到 4个已经存在的数据库,分别为

    2024年02月08日
    浏览(45)
  • 数据库概述SQL基本语法

    database简称DB: 存储数据的仓库,是以某种结构存储数据的文件。指长期保存在计算机的存储设备上,按照一定规则组织起来,可以被用户或应用共享的数据集合。 用于创建,维护,使用数据库的一种大型软件系统。比如MySQL, Oracle, SQL server等等。 方式1:右键任务栏-任务管理

    2024年02月12日
    浏览(31)
  • Web数据库基本知识,SQL基本语法

    当我们谈论整个技术栈时,实际上涉及了一系列步骤,而在Web开发中,这些步骤可以被具体化为以下几个阶段: DBMS-GUI-翻译器-查询语言 在web中具体如下: postgreSQL-Hasura-Apollo+ts-GraphQL 具体解释 DBMS(数据库管理系统): 作用: 数据库管理系统允许我们直接使用SQL语言来操作数

    2024年02月03日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包