使用Java實現資料庫編程—02 第二章 初始MySQL

来源:https://www.cnblogs.com/HQING/archive/2018/07/14/9309145.html
-Advertisement-
Play Games

1、 MySQL: ● MySQL是一個關係型資料庫管理系統,由瑞典MySQL AB公司開發,目前屬於Oracle公司。 MySQL最流行的關係型資料庫管理系統,在Web應用方面MySQL是最好的RDBMS(Relational Database Management System,關係資料庫管理系 ...


1、 MySQL:

       ●  MySQL是一個關係型資料庫管理系統,由瑞典MySQL AB公司開發,目前屬於Oracle公司。

           MySQL最流行的關係型資料庫管理系統,在Web應用方面MySQL是最好的RDBMS(Relational Database Management System,關係資料庫管理系統)應用軟體之一。

           MySQL是一種關聯資料庫管理系統,關聯資料庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度並提高了靈活性。

           MySQL所使用的SQL語言是用於訪問資料庫的最常用標準化語言。

           MySQL軟體採用了雙授權政策,它分為社區版和商業版,由於其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網站的開發都選擇

           MySQL作為網站資料庫。由於其社區版的性能卓越,搭配PHP和Apache可組成良好的開發環境。

2、MySQL的特點:

       1)Mysql是開源的,所以你不需要支付額外的費用。

       2)Mysql支持大型的資料庫。可以處理擁有上千萬條記錄的大型資料庫。

       3)MySQL使用標準的SQL數據語言形式。

       4)Mysql可以允許於多個系統上,並且支持多種語言。這些編程語言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。

       5)Mysql對PHP有很好的支持,PHP是目前最流行的Web開發語言。

       6)MySQL支持大型資料庫,支持5000萬條記錄的數據倉庫,32位系統表文件最大可支持4GB,64位系統支持最大的表文件為8TB。

       7)Mysql是可以定製的,採用了GPL協議,你可以修改源碼來開發自己的Mysql系統。

MySQL系統特性:

       1)使用C和C++編寫,並使用了多種編譯器進行測試,保證了源代碼的可移植性。

       2)支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統。

       3)為多種編程語言提供了API。這些編程語言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby、.NET和Tcl 等。

       4)支持多線程,充分利用 CPU 資源。

       5)優化的 SQL查詢演算法,有效地提高查詢速度。

       6)既能夠作為一個單獨的應用程式應用在客戶端伺服器網路環境中,也能夠作為一個庫而嵌入到其他的軟體中。

       7)提供多語言支持,常見的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作數據表名和數據列名。

       8)提供 TCP/IP、ODBC 和 JDBC等多種資料庫連接途徑。

       9)提供用於管理、檢查、優化資料庫操作的管理工具。

       10)支持大型的資料庫。可以處理擁有上千萬條記錄的大型資料庫。

       11)支持多種存儲引擎。

       12)線上 DDL/更改功能,數據架構支持動態應用程式和開發人員靈活性。

       13)複製全局事務標識,可支持自我修複式集群。

       14)複製無崩潰從機,可提高可用性。

       15)複製多線程從機,可提高性能。

3、MySQL的優勢:

            1、運行速度快,MySQL體積小,命令執行的速度快;    

     2、使用成本低:MySQL是開源的,且提供免費版本,對大多數用戶來說,大大降低了使用成本;

            3、容易使用:與其他大型資料庫的設置和關聯相比,其複雜程度較低,易於使用;

             4、可移植性強:MySQL能夠運行於多種系統平臺上;

             5、 適用用戶廣:MySQL支持最常用的數據管理功能,適用於中小型企業甚至大型網站應用;

4、Mysql:

MySQL版本:

 

 

MySQL運行機制:

 

MySQL的配置:

     1、埠號:3306

     2、預設字元集:utf8

     3、utf8:一種Unicode編碼,解決國際上字元不統一的多位元組編碼,通用性強

     4、將bin目錄寫入環境變數

     5、root密碼設置

MySQL安裝目錄:

        主要文件夾

    bin

    include

    lib

    share

 

my.ini:記錄MySQL配置信息,可修改配置內容,如埠號,字元等

命令行連接MySQL:

  檢查是否啟動服務

    啟動方式:屬性視窗

                     DOS命令:net start mysql57

    停止:net stop mysql57

註意:如果修改了配置文件,必須重啟MySQL服務才能生效;

命令行連接MySQL:

  Eg

    mysql –u root –proot

    mysql –u root – p

  連接的兩種方式:

    DOS下運行

     MySQL Command Line Client

     預設root登錄,僅輸入密碼

系統資料庫:

  Information_schema:主要存儲系統中的一些資料庫對象信息;

  Performance_schema:主要存儲資料庫伺服器性能參數;

  mysql:主要存儲系統的用戶許可權信息;

  test:MySQL資料庫管理系統自動創建的測試資料庫,任何用戶可放心使用;

用戶資料庫:用戶根據實際需求創建的資料庫;

   

5、操作Mysql:

創建資料庫:

    CREATE DATABASE 資料庫名;

EgCREATE DATABASE myschool;//分號為結束符,不可缺

 

 

查看資料庫列表:

    SHOW databases;

 

選擇資料庫:

  USE 資料庫名;

    Eg

      USE mybase; 

      USE myschool;

 

刪除資料庫:

DROP DATABASE 資料庫名;

    Eg

      DROP DATABASE myschool;

 

 

6、SQLyog:

SQLyog——圖形化的MySQL管理工具

  免費

  簡潔高效

  功能強大

SQLyog管理工具:工具操作方便,但熟練編寫SQL語句仍是程式員的必備技能;

 

 

結構化查詢語言:

名稱

解釋

命令舉例

DML

(數據操作語言)

用來操作資料庫中所包含的數據

INSERT

UPDATE

DELETE

DDL

(數據定義語言)

用於創建和刪除資料庫對象等操作

CREATE

DROP

ALTER

DQL

(數據查詢語言)

用來對資料庫中的數據進行查詢

SELECT

DCL

(數據控制語言)

用來控制資料庫組件的存取許可、存取許可權等

GRANT

COMMIT

ROLLBACK

7、Mysql數值類型:

    ●UNSIGNED屬性:標識為無符號數

    •ZEROFILL屬性:寬度(位數)不足以0填充

Eg:

CREATE TABLE `tb_type` (

    `sid` INT(4) ZEROFILL);

INSERT INTO ` tb_type1 ` VALUE(12) ,(1234),(123456);

註意:若某數值欄位指定了ZEROFILL屬性,將自動添加UNSIGNED屬性

 

 

TINYINT

非常小的數據

有符值:-27 ~ 27-1 

無符號值:0 ~ 28-1                               

1位元組

SMALLINT

較小的數據

有符值:  -215 ~ 215-1 

無符號值:  0 ~ 216-1      

2位元組

MEDIUMINT

中等大小的數據

有符值:  -223 ~ 223-1 

無符號值:  0 ~ 224-1      

3位元組

INT

標準整數

有符值:-231 ~ 231-1 

無符號值:0 ~ 232-1      

4位元組

BIGINT

較大的整數

有符值:-263 ~263-1

無符號值:0 ~264-1      

8位元組

FLOAT

單精度浮點數

±1.1754351e -38

4位元組

DOUBLE

雙精度浮點數

±2.2250738585072014e -308

8位元組

DECIMAL

字元串形式的浮點數

DecimalMD

M+2個位元組

8、MySQL字元串類型:

字元串類型

說明

長度

CHAR[(M)]

定長字元串

M位元組

VARCHAR[(M)]

可變字元串

可變長度

TINYTEXT

微型文本串

0~281位元組

TEXT

文本串

0~2161位元組

9、MySQL日期類型:

日期類型

格式

取值類型

DATE

YYYY-MM-DD,日期格式

1000-01-01~ 9999-12-31

DATETIME

YY-MM-DD  hh:mm:ss:

1000-01-01 000000 ~9999-12-31 235959

TIME

hh:mm:ss:

-835:59:59 ~ 838:59:59

TIMESTAMP

YYYYMMDDHHMMSS

1970年某時刻~2038年某時刻,精度為1

YEAR

YYYY格式的年份

1901~2155

10、SQLyog創建表:

CREATE TABLE [IF NOT EXISTS]  表名(

    欄位1 數據類型[欄位屬性|約束][索引][註釋],

      ……

     欄位n 數據類型[欄位屬性|約束][索引][註釋]

)[表類型][表字元集][註釋];

查看表:SHOW TABLES;

Eg

#創建學生表

CREATE TABLE `student`

    `studentNo` INT(4)  PRIMARY KEY,

     ` name` CHAR(10),

     ……;

註意:

在MySQL中,如果使用的資料庫名、表名、或欄位名等與保留字衝突時,需要使用撇號(`)括起來;

在MySQL生成的代碼中,表名,欄位名等全部使用撇號(`)括起來;eg:上面;

多欄位使用逗號分隔

單行註釋:#......

多行註釋:/*……*/

表的欄位也可成為列;

         欄位的約束及屬性:

非空約束

NOT NULL

欄位不允許為空

預設約束

DEFAULT

賦予某欄位預設值

唯一約束

UNIQUE KEY(UK)

設置欄位的值是唯一的,但允許為空,但只能有一個空值

主鍵約束

PRIMARY KEY(PK)

設置該欄位為表的主鍵唯一標識該表記錄

外鍵約束

FOREIGN KEY(FK)

用於在兩表之間建立關係,需要指定引用主表的哪一欄位

自動增長

AUTO_INCREMENT

 設置該列為自增欄位,預設每條自增1,通常用於設置主鍵

          單欄位主鍵:

在定義欄位的同時指定主鍵:

語法:

CREATE TABLE[IF NOT EXISTS] 表明{

     欄位1 數據類型PRIMARY KEY,

     …….

};

在定義完所有欄位之後指定主鍵:

語法:

CREATE TABLE[IF NOT EXISTS] 表明{

     欄位1 數據類型,

     …….

[CONSTRAINT<約束名>]PRIMARY KEY[列名]

};

Eg

CREATE TABLE student

      `studentNo` INT(4)  PRIMARY KEY,

      ……);

Eg

CREATE TABLE student

      `studentNo` INT(4) ,

      ……

    PRIMARY KEY(`id`)

);

          多欄位聯合主鍵:

語法:

CREATE TABLE[IF NOT EXISTS] 表明{

     PRIMARY KEY[欄位1,欄位2……]

     …….

};

Eg:

CREATE TABLE student

      `id` INT(4),

      `name` VARCHAR(11).

     ……

    PRIMARY KEY(`id`,`NAME`)

);

         註釋:在創建表的同時可以為表或欄位添加說明性文字,即註釋。註釋是使用COMMENT關鍵字來添加的;

Eg

CREATE TABLE test (

    `id` int(11) UNSIGNED COMMENT ‘編號

)COMMENT='測試表 ;

       編碼格式:預設情況下,MySQL所有資料庫、表、欄位等使用MySQL預設字元集;也可以通過my.ini文件中的default-character-set參數來修改預設值;

語法:

CREATE TABLE [IF NOT EXISTS] 表名(

     #省略代碼

CHARSET = 字元集名;

       Eg:在myschool資料庫中創建學生表

 

代碼:

CREATE TABLE `student`(

             `studentNo` INT(4) NOT NULL COMMENT '學號PRIMARY KEY,

      `loginPwd` VARCHAR(20) NOT NULL COMMENT '密碼', 

      `studentName` VARCHAR(50) NOT NULL COMMENT '學生姓名',

      `sex` CHAR(2) DEFAULT '' NOT NULL  COMMENT '性別',

      `gradeId` INT(4)  UNSIGNED COMMENT '年級編號',

      `phone` VARCHAR(50)  COMMENT '聯繫電話',

      `address` VARCHAR(255)  DEFAULT '地址不詳'COMMENT '地址',   `bornDate` DATETIME  COMMENT '出生時間',

      `email` VARCHAR(50) COMMENT'郵件賬號',

       ` identityCard ` VARCHAR(18)  UNIQUE KEY COMMENT '身份證號'

COMMENT='學生表';

11、查看表:

  查看表是否存在

          USE 資料庫名;

 

  看表定義:

        DESCRIBE 表名;

    或

   DESC 表名;

 Eg

    USE myschool;

    DESCRIBE `student`;

 

避免DOS視窗亂碼,可執行SET NAMES gbk;

此代碼等同於:

SET charct_set_client=gbk;

SET charct_set_result=gbk;

SET charct_set_connection=gbk;

12、刪除表:在刪除表之前,先使用IF EXISTS語句驗證表是否存在

DROP TABLE [IF  EXISTS] 表名;

  Eg

    USE myschool;

    DROP TABLE IF EXISTS `student`;

13、MySQL的存儲引擎:

 存儲引擎的類型

      MyISAM、InnoDB 、Memory、CSV等9種

          可以使用SHOW ENGINES語句查看系統所支持的引擎類型;

MyISAM與InnoDB類型主要區別

 

適用場合

  •   使用MyISAM:   不需事務,空間小,以查詢訪問為主
  •   使用InnoDB:     多刪除、更新操作,安全性高,事務處理及併發控制

14、MySQL的存儲引擎:

查看當前預設存儲引擎

  SHOW VARIABLES LIKE ‘%storage_engine%’;

 

修改存儲引擎

  修改my.ini配置文件

 

 設置表的存儲引擎:

  CREATE TABLE 表名(

      #省略代碼

  )ENGINE=存儲引擎;

Eg

  CREATE TABLE `myisam` (

     id  INT(4)

   )ENGINE=MyISAM;

數據表的存儲位置:

  MyISAM類型表文件

  *.frm:表結構定義文件

  *.MYD:數據文件

  *.MYI:索引文件

 

InnoDB類型表文件

  *.frm:表結構定義文件

  ibdata1文件

 

 存儲位置

      因操作系統而異,可查my.ini

           datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"

           innodb_data_home_dir="D:/MySQL Datafiles/"

15、MySQL系統幫助:

HELP 查詢內容;

Eg

HELP contents;

 

HELP Data Types;

 

HELP INT;

 

17、附加1:

 

什麼是資料庫?

       資料庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫,

       每個資料庫都有一個或多個不同的API用於創建,訪問,管理,搜索和複製所保存的數據。

       我們也可以將數據存儲在文件中,但是在文件中讀寫數據速度相對較慢。所以,現在我們使用關係型資料庫管理系統(RDBMS)來存儲和管理的大數據量。

        所謂的關係型資料庫,是建立在關係模型基礎上的資料庫,藉助於集合代數等數學概念和方法來處理資料庫中的數據。

       RDBMS即關係資料庫管理系統(Relational Database Management System)的特點:

       1)數據以表格的形式出現

       2)每行為各種記錄名稱

       3)每列為記錄名稱所對應的數據域

       4)許多的行和列組成一張表單

       5)若幹的表單組成database

關係型資料庫(RDBMS)術語:

       針對關係型資料庫作如下解釋:

         1)關係型資料庫可以簡單的理解為二維資料庫,表格式類似於excel表格,我們平時我接觸的數據據,一般都是關係型資料庫。

         2)關係型資料庫不是唯一的高級資料庫模型,也不是最優的一種,但是,關係型資料庫是現今使用最廣泛、最易於理解和使用的資料庫模型。

         3)在我們開始學習MySQL資料庫前,讓我們先瞭解下RDBMS的一些術語:

             1資料庫: 資料庫是一些關聯表的集合。

             2數據表: 表是數據的矩陣。在一個資料庫中的表看起來像一個簡單的電子錶格。

             3關係:可以理解成一張二維表,每個關係都有一個關係名,即表名。

             4關係模式:對關係的描述,在資料庫中通常稱之為表結構。

             5元組:可以理解成二維表中的一行,在資料庫中常被稱作記錄。一行(=元組,或記錄)是一組相關的數據,例如一條用戶訂閱的數據。

             6屬性:可以理解成二維表中的一列,在資料庫中常被成為欄位。一列(數據元素) 包含了相同的數據, 例如郵政編碼的數據。

             7域:屬性的取值範圍,也是資料庫中某一列的取值限制。

             8關鍵字:一組可以唯一標識元組的屬性。資料庫中常稱為主鍵有一個或多個列組成。  

             9冗餘:存儲兩倍數據,冗餘可以使系統速度更快。

             10主鍵:主鍵是唯一的。一個數據表中只能包含一個主鍵。你可以使用主鍵來查詢數據。

             11外鍵:外鍵用於關聯兩個表。

             12複合鍵:複合鍵(組合鍵)將多個列作為一個索引鍵,一般用於複合索引。

             13索引:使用索引可快速訪問資料庫表中的特定信息。索引是對資料庫表中一列或多列的值進行排序的一種結構。類似於書籍的目錄。

             14參照完整性: 參照的完整性要求關係中不允許引用不存在的實體。與實體完整性是關係模型必須滿足的完整性約束條件,目的是保證數據的一致性。

         4)關係型資料庫特點:

            1容易理解:二維表結構是非常貼近邏輯世界的一個概念,相對與網狀、層次以及其它模型更容易理解。

            2使用方便:通過SQL語言程式員和數據管理員可以很方便的在邏輯層面操作資料庫而不必理解其底層實現。

            3易於維護:豐富的完整性(實體完整性、參照完整性、用戶自定義完整性)降低數據冗餘和數據不一致的概率。       

         5)關係操作:

            1數據查詢:選擇、投影、連接、並、交、差、除

            2數據操作:增加、刪除、修改、查詢

         6)SQL(Structured Query Language):結構化查詢語言,一種特殊目的的編程語言,資料庫查詢和程式設計語言,用於存儲數據以及查詢、更新和管理關係型資料庫。

 SQL查詢語言組成部分:

       1DDL(Data Definition Languages)語句:數據定義語句,用於定義不同的數據段、資料庫、表、列、索引等資料庫的對象定義。常用關鍵字主要包括create、drop、alter等。

       2DML(Data Manipulation Language)語句:數據操縱語句,用於添加、刪除、更新和查詢資料庫記錄,並檢查數據完整性。常用關鍵字包括insert、delete、update和select等。

       3DCL(Data Control Language)語句:數據控制語句,用於控制不同數據段直接的許可和訪問級別的語句,用於定義資料庫、表、欄位、用戶的訪問許可權和安全級別。常用關鍵字有grant、revoke等。


18
、附加2:

default-character-set 客戶端預設字元集;

character-set-sever 伺服器端預設字元集;

MySQL的預設埠號是3306;

delete是刪除表中的數據,而drop是撤銷表;

MySQL刪除表;刪除表:Drop   table  if  exists ‘student’或drop   table ‘student’;

Mysql中的約束類型有:主鍵(primary key)、預設值(default)、唯一(unique)、外鍵(foreign key)和非空(not null),

DELETE * from Student 只是刪除學生表裡面的所有數據,所以Student這張表還存在的,只是裡面沒有數據了。

DROP table`student`則會刪除整張表

對錶及以上級別的刪除操作都是drop,數據級別的操作都是delete;

在MYSQL中實現模糊查詢的關鍵字是LIKE。

 grant on …to 用來允許用戶獲得許可權

DDL :資料庫定義語言(Data Definition Language),用來創建資料庫中的各種對象-----表、視圖、索引、同義詞、聚簇等

如:CREATE TABLE/VIEW/INDEX/SYN/CLUSTERDQL :

數據查詢語言(Data Query Language),數據查詢語言DQL基本結構是由SELECT子   句,FROM子句,WHEREDML :

數據操縱語言(Data Manipulation Language),INSERT UPDATE   DELETE

DCL :數據控制語言(Data Control Language),GRANT ROLLBACK  COMMIT

在使用modify對列進行更改時,需要同時設定其當前列的全部屬性(至少包括數據類型),否則該列數據只有最新設置的屬性。

查看所有數據表的語法是:show tables;

查詢所有的資料庫名稱的語法是:show databases;

查看表中的列時,使用show columns from  表名

查看所有表 show tables

查看資料庫 show databases

WHERE是條件判斷

ORDER BY是排序、

LIKE模糊查詢

字元集設置可以分別對資料庫、表、欄位層面進行設置,所以,如果設置的值不同,字元集可以不相同的。

character_set_server:預設的內部操作字元集

character_set_client:客戶端來源數據使用的字元集

character_set_connection:連接層字元集

character_set_results:查詢結果字元集

character_set_database:當前選中資料庫的預設字元集

character_set_system:系統元數據(欄位名等)字元集

編譯MySQL 時,指定的預設的字元集是latin1。

執行命令SET character_set_client = utf8 。

安裝MySQL可以在配置文件(my.ini)中指定預設字元集。

安裝MySQL選擇多語言支持,安裝程式會自動在配置文件中把字元集設置utf8;

通過命令:

–mysql>show character set; 查看Mysql支持的字元集

– mysql> show collation; 查看Mysql排序方式

While迴圈語句可以根據某些條件重覆執行一條SQL語句或一個語句塊

可以在建庫、建表、建列時設置字元集,但不能在添加數據類型時候設置字元集;

修改表字元集ALTER TABLE TABLENAME CHARACTER SET XXX;這個語句只修改表的字元集,影響後續該表新增列的預設定義,已有列的字元集不受影響。

ALTER TABLE TABLENAME CONVERT TO CHARACTER SET XXX;這個語句同時修改表字元集和已有列字元集,並將已有數據進行字元集編碼轉換

MySQL 使用 AUTO_INCREMENT 關鍵字來執行 auto-increment 任務。預設地,AUTO_INCREMENT 的開始值是 1,每條新記錄遞增 1。

要讓 AUTO_INCREMENT 序列以其他的值起始。設置了PRIMARY KEY後,預設的屬性為:not null 、 unique

為了使索引鍵的值在基本表中唯一,在建立索引的語句中應使用保留字unique

對於mysqldump命令導出的SQL備份腳本,可通過mysql命令導入以恢複數據,命令格式為:mysql -u 用戶名 -p [庫名] &lt;/備份路徑/備份文件名

對於字元集,

mysql支持細分為4個層次。【伺服器,資料庫等等】在編譯和安裝mysql時,如果沒有顯示指明,預設就是latin1;啟動時此文件繼承源自配置文件。

 


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

-Advertisement-
Play Games
更多相關文章
  • 由於Oracle授權問題,Maven3不提供oracle JDBC driver 可以到maven中央倉庫去下載依賴,網址:http://repo.spring.io/plugins-release/com/oracle/ojdbc6/11.2.0.3/ 複製到本地倉庫對應目錄即可 ...
  • MySQL5.7下麵,誤操作導致的drop table db1.tb1; 的恢復方法: 0、停業務數據寫入。【iptables封禁】 1、從備份伺服器上拉取最新的一個全備文件,恢復到一個臨時的伺服器上,解壓並啟動mysqld。 2、在這台新的slave上執行如下命令: 2.1 先配置好複製關係, c ...
  • 資料庫崩潰恢復表結構的方法 如果資料庫發生崩潰,無法登陸資料庫,想要快速恢復表結構的話有一個很方便的方法。 通過mysqlfrm工具就可以快速解析.frm文件,找到create table 語句。 安裝mysqlfrm 安裝mysqlfrm的話,需要兩個安裝包。mysql-utilities和mys ...
  • 分散式文件系統概述 相對於傳統的本地文件系統而言,分散式文件系統(Distribute File System)是一種通過網路實現文件在多台主機上進行分散式存儲的文件系統。分散式文件系統的設計一般採用“客戶/服務機”模式,客戶端以特定的通信協議通過網路與伺服器建立連接,提出文件訪問請求,客戶端和服務 ...
  • 1.為什麼要重寫SQL語句 ProxySQL在收到前端發送來的SQL語句後,可以根據已定製的規則去匹配它,匹配到了還可以去重寫這個語句,然後再路由到後端去。 什麼時候需要重寫SQL語句? 對於下麵這種簡單的讀、寫分離,當然用不上重寫SQL語句。 這樣的讀寫分離,實現起來非常簡單。如下: 但是,複雜一 ...
  • 前言 本文是個人學習SQL Server 資料庫時的以往筆記的整理,內容主要是對資料庫的基本增刪改查的SQL語句操作和約束,視圖,存儲過程,觸發器的基本瞭解。 註:內容比較基礎,適合入門者對SQL Server 資料庫的瞭解!!! 正文 1.子查詢 --把一個查詢結果作為另外一個查詢的查詢源 sel ...
  • show dbs 查看有哪些資料庫創建資料庫 : use db_test插入集合user : db.createCollection("user")插入文檔 : db.user.insert({"name":"zhangsan","age":20}) db.admin.insert({"user": ...
  • 前言 本文是個人學習SQL Server 資料庫時的以往筆記的整理,內容主要是對資料庫的基本增刪改查的SQL語句操作和約束,視圖,存儲過程,觸發器的基本瞭解。 註:內容比較基礎,適合入門者對SQL Server 資料庫的瞭解!!! 正文 1.主鍵: 主鍵的作用:保證表中的每條數據的唯一性 特點: 主 ...
一周排行
    -Advertisement-
    Play Games
  • Dapr Outbox 是1.12中的功能。 本文只介紹Dapr Outbox 執行流程,Dapr Outbox基本用法請閱讀官方文檔 。本文中appID=order-processor,topic=orders 本文前提知識:熟悉Dapr狀態管理、Dapr發佈訂閱和Outbox 模式。 Outbo ...
  • 引言 在前幾章我們深度講解了單元測試和集成測試的基礎知識,這一章我們來講解一下代碼覆蓋率,代碼覆蓋率是單元測試運行的度量值,覆蓋率通常以百分比表示,用於衡量代碼被測試覆蓋的程度,幫助開發人員評估測試用例的質量和代碼的健壯性。常見的覆蓋率包括語句覆蓋率(Line Coverage)、分支覆蓋率(Bra ...
  • 前言 本文介紹瞭如何使用S7.NET庫實現對西門子PLC DB塊數據的讀寫,記錄了使用電腦模擬,模擬PLC,自至完成測試的詳細流程,並重點介紹了在這個過程中的易錯點,供參考。 用到的軟體: 1.Windows環境下鏈路層網路訪問的行業標準工具(WinPcap_4_1_3.exe)下載鏈接:http ...
  • 從依賴倒置原則(Dependency Inversion Principle, DIP)到控制反轉(Inversion of Control, IoC)再到依賴註入(Dependency Injection, DI)的演進過程,我們可以理解為一種逐步抽象和解耦的設計思想。這種思想在C#等面向對象的編 ...
  • 關於Python中的私有屬性和私有方法 Python對於類的成員沒有嚴格的訪問控制限制,這與其他面相對對象語言有區別。關於私有屬性和私有方法,有如下要點: 1、通常我們約定,兩個下劃線開頭的屬性是私有的(private)。其他為公共的(public); 2、類內部可以訪問私有屬性(方法); 3、類外 ...
  • C++ 訪問說明符 訪問說明符是 C++ 中控制類成員(屬性和方法)可訪問性的關鍵字。它們用於封裝類數據並保護其免受意外修改或濫用。 三種訪問說明符: public:允許從類外部的任何地方訪問成員。 private:僅允許在類內部訪問成員。 protected:允許在類內部及其派生類中訪問成員。 示 ...
  • 寫這個隨筆說一下C++的static_cast和dynamic_cast用在子類與父類的指針轉換時的一些事宜。首先,【static_cast,dynamic_cast】【父類指針,子類指針】,兩兩一組,共有4種組合:用 static_cast 父類轉子類、用 static_cast 子類轉父類、使用 ...
  • /******************************************************************************************************** * * * 設計雙向鏈表的介面 * * * * Copyright (c) 2023-2 ...
  • 相信接觸過spring做開發的小伙伴們一定使用過@ComponentScan註解 @ComponentScan("com.wangm.lifecycle") public class AppConfig { } @ComponentScan指定basePackage,將包下的類按照一定規則註冊成Be ...
  • 操作系統 :CentOS 7.6_x64 opensips版本: 2.4.9 python版本:2.7.5 python作為腳本語言,使用起來很方便,查了下opensips的文檔,支持使用python腳本寫邏輯代碼。今天整理下CentOS7環境下opensips2.4.9的python模塊筆記及使用 ...