高級查詢(一)

来源:https://www.cnblogs.com/fl72/archive/2018/02/02/8406023.html
-Advertisement-
Play Games

數據類型 整型 int 小數 double 精確度要求高的 ———Decimal(18,4) 對應Java中的類型 BigDecimal 字元串:nvarchar(32) varchar char char:定長字元串(一旦設定了長度,無論真實內容有多少,都要占用指定長度的空間) varchar:可 ...


數據類型
 整型 int
 小數 double
 精確度要求高的 ———Decimal(18,4)
 對應Java中的類型  BigDecimal

  字元串:nvarchar(32) varchar  char
 char:定長字元串(一旦設定了長度,無論真實內容有多少,都要占用指定長度的空間)
 varchar:可變字元串
 nvarchar()防止亂碼出現

varchar(n),nvarchar(n) 中的n怎麼解釋:
  nvarchar(n)最多能存n個字元,不區分中英文。
  varchar(n)最多能存n個位元組,一個中文是兩個位元組。
所占空間:
  nvarchar(n)一個字元會占兩個位元組空間。
  varchar(n)中文占兩位元組空間,英文占一個。
n的取值範圍:
  nvarchar(n)?? n的範圍是:1與4000之間
  varchar(n)?? n的範圍是:1與8000之間
n的大小是否會影響性能:
  varchar及nvarchar里的長度 n 不會影響空間大小及性能。除非n是max並且內容大於4000或8000
  設置n更多的是業務需要,如限制身份證只能輸入18位,再多就報錯,或者防止惡意攻擊撐爆硬碟。對空間及性能都沒有影響
n設置多大比較好:
  既然對空間及性能都沒有影響,那我們只要考慮業務需要就可以了,我分析過微軟的資料庫,大都設置為:256,也會看到64,128,512,max等,可能是便於記憶吧。

varchar(n),nvarchar(n)存儲空間舉例解釋:
  包含 n 個字元的可變長度 Unicode 字元數據。位元組的存儲大小是所輸入字元個數的兩倍。?
  兩欄位分別有欄位值:我和coffee?
  那麼varchar欄位占2×2+6=10個位元組的存儲空間,而nvarchar欄位占8×2=16個位元組的存儲空間。?
  如欄位值只是英文可選擇varchar,而欄位值存在較多的雙位元組(中文、韓文等)字元時用nvarchar。
varchar和nvarchar如何選擇?
  varchar在SQL Server中是採用單位元組來存儲數據的,nvarchar是使用Unicode來存儲數據的.中文字元存儲到SQL Server中會保存為兩個位元組(一般採用Unicode編碼),英文字元保存到資料庫中,如果欄位的類型為varchar,則只會占用一個位元組,而如果欄位的類型為nvarchar,則會占用兩個位元組.
3.日期類型
DateTime

 

函數一定要加小括弧!!!!

 

 

2. 創建資料庫
create database 資料庫名
 創建表
create table 表名(
列名 類型(int) 主鍵(primary key) 自增(auto_increment) 屬性(not null),
);
 添加記錄
insert into 表名(列名) values(值);
 約束添加:
 1.主鍵約束
alter table 表名1
add constraint pk_列名1 primary key 表名2(列名2);
 刪除主鍵
alter table 表名 drop primary key

 2.外鍵約束
alter table `表名1` add constraint fk_表名1_表名2
foreign key (`表1中的列名`) references `表2`(表2中的列名);

 3.唯一約束
alter table 1表 add constraint  uk_l.1列 unique key(1.1列);

 4.添加預設約束
alter table 表名
alter column 列名 set default '預設值';

 5.檢查約束(不起作用)
alter table 表名
add constraint ck_列名 check (條件);

 

3.不會設置外鍵
解析:1.找到外鍵表 1的一方是主表
      2.外鍵表中有非法數據
      3.主外鍵表中公共列的類型必須相同

4.什麼是引擎?
解析:能讓程式啟動並執行的一個程式,也稱之為驅動。

5.
 1.修改表名
將student改成student2
alter table 舊表名 rename 新表名
 2.添加列
alter table 1 add 1.1 varchar(32) not null;
 3.修改列名
alter table 表名 change 列名  新列名 (類型)bit not null;
 4.刪除欄位
alter table 表名 drop 欄位名

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 編譯安裝 程式包編譯 編譯安裝 ...
  • I2C設備驅動要使用i2c_driver和i2c_client數據結構並填充i2c_driver中的成員函數。i2c_client一般被包含在設備的私有信息結構體xxx_data中,而i2c_driver則適合被定義為全局變數並初始化。下麵提供i2c_driver的初始化模版: 1 Linux I2 ...
  • 1 I2C子系統框架 Linux I2C子系統分成三部分:I2C核心層、I2C匯流排驅動和I2C設備驅動。 (1)I2C核心層 I2C核心提供了I2C匯流排驅動和設備驅動的註冊、註銷方法,I2C通信方法(即algorithm)上層的與具體適配器無關的代碼以及探測設備、檢測設備地址的上層代碼等。核心層的代 ...
  • 1 I2C匯流排 IIC匯流排由數據線SDA和時鐘線SCL兩條線構成通信線,既可以發送數據,又可以接收數據。 IIC匯流排典型電路:SDA和SCL連接線上有兩個上拉電阻,所有的IIC設備並聯在匯流排上。 2 I2C信號 IIC匯流排通信有著嚴格的時序,如果時序錯誤將會無法通信。IIC匯流排在傳送數據的過程中,有 ...
  • 1 USB請求塊 USB請求塊是USB設備驅動中用來描述與USB設備通信所用的基本載體和核心數據結構。 2 URB處理流程 USB設備中的每個端點都處理一個URB隊列,在隊列被清空之前,一個URB的典型生命周期如下: (1)使用usb_alloc_urb來分配一個URB。 函數原形 struct u ...
  • 一 概述 在資料庫方面,對於非DBA的程式員來說,事務與鎖是一大難點,針對該難點,本篇文章試圖採用圖文的方式來與大家一起探討。 “淺談SQL Server 事務與鎖”這個專題共分兩篇,上篇主講事務及事務一致性問題,並簡略的提及一下鎖的種類和鎖的控制級別。 下篇主講SQL Server中的鎖機制,鎖控 ...
  • Daemon Fault Tolerance Storm有一些不同的守護進程 Nimbus負責調度workers supervisors負責運行和殺死workers log views負責訪問日誌 UI負責顯示集群的狀態 What happens when a worker dies? 當一個wor ...
  • 1. 引言 1.1. 背景 本文延續《OCCI開發環境的安裝和配置》一文,目的主要是搭建一個可用的OCCI開發環境。作為環境的驗證,本文給出一個小例子,獲取Oracle資料庫的系統時間的小程式,在OCCI環境開發和運行。 同時,總結一下在測試過程中遇到的所有問題和使用的知識,不僅限於OCCI,包括I ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...