日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

如何使用Pycharm連接SQL Sever(詳細教程)

瀏覽:413日期:2023-05-02 10:03:24
目錄
  • 步驟一:先檢測自己的SQL Sever有沒有打開密碼功能
  • 步驟二:建立一個空數據庫,并且建立一個專屬用戶
  • 步驟三:打開1433 端口
  • 步驟四:在pycharm中測試
  • 步驟五:服務器含有漢語的亂碼錯誤修正

如何使用pycharm連接SQL Sever:

應該是所有的錯誤都經歷了(不得不說挺崩潰的)

Tip:不要跳步操作。

步驟一:先檢測自己的SQL Sever有沒有打開密碼功能

如果沒有打開密碼功能僅新建登錄名會出現

標題: 連接到服務器 ------------------------------ 無法連接到 LAPTOP-40O6HVDS。 ------------------------------ 其他信息: 已成功與服務器建立連接,但是在登錄過程中發(fā)生錯誤。 (provider: Shared Memory Provider, error: 0 - 管道的另一端上無任何進程。) (Microsoft SQL Server,錯誤: 233)

打開密碼功能具體實現操作如下:

我的SQL Sever下載的時候就是用的電腦身份驗證登錄的,需要設置密碼登錄:

找到對象資源管理器的第一個,單擊鼠標右鍵后出現以下頁面:

點擊屬性,進入頁面后點擊安全性,會出現:

服務器身份驗證選中第二個SQL Sever 和Window 身份驗證)模式之后點擊確定。

步驟二:建立一個空數據庫,并且建立一個專屬用戶

建立專屬用戶和空數據庫的原因是防止以后對數據庫操作失誤時影響到其它的數據庫。

首先需要點擊新建查詢并且執(zhí)行以下操作

create database soft2104

執(zhí)行會出現一個soft2104的新數據庫(soft2104我的數據庫名稱,后續(xù)需要放在pycharm里

如果你覺得數據庫難聽可以執(zhí)行如下操作進行刪除數據庫:(不過需要新建一個數據庫

use master --刪數據庫drop database soft2104 --刪數據庫 

建立好數據庫后雙擊安全性

雙擊登錄名后點擊鼠標右鍵,點擊新建登錄名

編輯一個登錄名yunmengze這個是我的用戶名,后續(xù)需要放在pycharm里

接下來點擊SQL Sever 身份驗證輸入密碼,隨便起一個密碼,忘了可以再更改。在這里我就用123456代替(123456是我的密碼,后續(xù)需要放在pycharm里)。

接下來把強制實施密碼策略的對號給點掉(不然后來會遇到各種登錄問題)

變成這樣:

點擊用戶映射,將你的數據庫打勾

將下邊的db_ower對勾選中

點擊確定,之后進行驗證:

點擊電腦和叉的標志退出服務器斷開連接,之后點擊電腦和綠線的標志連接服務器

點擊SQL Sever 身份驗證輸入賬號密碼如果成功的連接,就會進入數據庫,你只能對你用戶對應下的數據庫進行各種操作:

如果你的SQL Sever沒有打開密碼功能就會出現以下提示

標題: 連接到服務器 ------------------------------ 無法連接到 LAPTOP-40O6HVDS。 ------------------------------ 其他信息: 已成功與服務器建立連接,但是在登錄過程中發(fā)生錯誤。 (provider: Shared Memory Provider, error: 0 - 管道的另一端上無任何進程。) (Microsoft SQL Server,錯誤: 233)

步驟三:打開1433 端口

首先需要檢測自身的 1433 端口是否打開(一般默認的都是關閉的需要自己打開)

1433應該是電腦的一個端口,可以鏈接電腦的(其實不需要知道是什么)

點擊:win和R,輸入cmd點擊回車出現如下界面:

輸入telnet localhost 1433并點擊回車

一般會出現一下錯誤

'telnet' 不是內部或外部命令,也不是可運行的程序

解決辦法:

點擊:win和R,輸入control點擊回車出現如下界面:

點擊程序(不要點到卸載程序)

點擊啟動或關閉Windows 功能

將Telnet客戶端對號選中,點擊確定,會經過大概1分鐘左右的等待頁面

再次重復win和R,輸入cmd點擊,輸入telnet localhost 1433并點擊回車出現以下錯誤

正在連接localhost...無法打開到主機的連接。 在端口 1433: 連接失敗

(你已經成功了一半了)

打開以下程序:

找不到就在搜索框里輸入sql

打開之后會出現以下界面:

禁用所有上述出現的程序必須先這么做

點擊SQL Sever網絡配置,然后點擊MSSQLSEVER的協(xié)議

雙擊這個TCP/IP,進入之后將TCP/IP的啟用改為 是

點擊IP地址:

將IP1、IP2的啟用改為是,觀察TCP端口是不是1433。(一共改兩個)

往下滑出現IPAll,觀察其TCP端口是不是1433,最后別忘記點應用不是點擊確定

經過上述操作后重啟電腦,重新打開該軟件,然后再將下邊的東西改成啟動SQL Sever代理啟動失敗與否不會影響SQL Sever的使用。

點擊:win和R,輸入cmd點擊回車,并在其中輸入telnet localhost 1433 當頁面跳轉到以下頁面則說明你的1433配置成功:

步驟四:在pycharm中測試

經過以上操作之后打開pycharm在終端輸入,安裝pycharm和SQL Sever鏈接的庫:

pip install pymssql

pymssql庫安裝成功后建立新的py文件并輸入以下代碼并執(zhí)行

import pymssql connect = pymssql.connect(host="localhost",server="LAPTOP-40O6HVDS", port="1433",user="yunmengze", password= "123456", database="soft2104")  # host不要改其參數,server改成你的服務器名, port不要改其參數,user你的用戶名, password你的密碼, database你的數據庫名if connect:

'yunmengze', '123456', 'soft2104'是上述步驟二操作中設置的。

LAPTOP-40O6HVDS是我的服務器名稱,在這里你需要打開你的SQL Sever登錄界面進行查看

如果上述的,代碼執(zhí)行失敗,失敗示例如下(服務器名字是漢語的):

請用以下代碼調試,如果這樣能夠連接成功請利用步驟五修改服務器名稱

import pymssqlconnect = pymssql.connect(host="localhost",server="LAPTOP-40O6HVDS", port="1433",user="yunmengze", password= "123456", database="soft2104",charset="GBK")  # host不要改其參數,server改成你的服務器名, port不要改其參數,user你的用戶名, password你的密碼, database你的數據庫名,charset不要改變其參數。if connect:    print("數據庫連接成功")else:    print("連接失敗")

如果你的運行結果是:數據庫連接成功

恭喜你的pycharm和SQL Sever鏈接成功。

(剩下的就是學習如何以pycharm為媒介來操作SQL Sever了)

SQL Sever在pycharm中的導入數據需要修改用戶權限,如果你經過一番波折連接成功建議您往下看……

步驟五:服務器含有漢語的亂碼錯誤修正

下面根據我經歷的一下問題做一些補充:

如果你的服務器沒有漢語請?zhí)^該步驟。

如果你的服務器是漢語的,登錄的時候需要charset="GBK",但是對后續(xù)的在數據增加時會因為GBK有亂碼的風險,需要做下列一下修改:

點擊此電腦的屬性

進入后點擊重命名這臺電腦

重命名后重啟電腦(為了教程我也是重命名了,………………)

重啟電腦后再打開sql sever點擊服務器,就可以對服務器進行選擇,選擇你命名的電腦名稱的服務器,嘗試一下就會發(fā)現也可以進入。

下面教程一種更改服務器名稱在pycharm來隱藏真實的服務器名稱的方法:

修改服務器的名稱(相當于加一個小名),下列操作是在sql sever里新建查詢中執(zhí)行的,需要根據提示修改其中的oldservername和newservername:

/*select @@SERVERNAME--查詢當前服務器實際名稱,在后續(xù)操作過程中不會影響該值,服務器的大名select SERVERPROPERTY("ServerName")--查看所有定義的服務器*/sp_helpserver    --可以查看服務器的小名--根據查出的小名進行修改oldservername的值sp_dropserver "oldservername" --newservername是更改后的名稱sp_addserver "newservername","local" --將更改后的名稱應用newservername是你需要改的sp_serveroption "newservername", "data access", "on"--oldservername原來的服務器名,newservername新的服務器名

修改后,用新的服務器名稱也能進入服務器,注意不要有漢語

實際服務器如果有漢語請通過上一個方法修改服務器名稱先對真實服務器名稱修改,增加昵稱的方式不會更改原來服務器中包含漢語使服務器無法進入或亂碼的錯誤。

SQL Sever在pycharm中的導入數據,增,刪,查操作

如果你想大量導入數據導入數據前需要在sql sever里建立好表格),使用bulk函數,例如:

bulk insert soft2110 --txt插入到soft2110表格中from "d:2104.txt"   --txt在D盤而且需要其編碼為ANSI才行with(fieldterminator = "\t",rowterminator = "\n") --\t是每行以空格分割,\n是根據換行將表格導入。

需要更改你的登錄名的權限,打開方式如下:

雙擊安全性

雙擊登錄名

找到你的登錄名(我的是yunmengze),雙擊服務器角色將服務器角色的sysadmin選中

在sql sever里建立表格時需要以下注意:

聲明表格變量時不要用nvarchar,varchar,因為這兩個聲名的字符串編碼是GBK編碼,如果在pycharm里插入數據時會因為pycharm執(zhí)行過程使用utf-8編碼導致插入后亂碼。所以在聲明table時字符串盡量用nchar(20),這種方式是utf-8編碼,其中的數字20是字符串的大小,一個漢字大概能占用2個位置,所以聲明的大小不能太大,更不能過小

示例如下:(先別粘,后續(xù)有總的,先看懂是怎么一回事

use soft2104create table soft2110(xh int,dp nchar(20),pr nchar(20),id nchar(30),nm nchar(20))

如果你之前聲明過soft2110表格但是使用了GBK編碼的nvarchar,varchar,你可以通過以下代碼刪除表格soft2110:

drop table soft2110

以下示例是完整的操作示例(已經給你的用戶打開權限,復制完整代碼的時間到了):

use soft2104drop table soft2110create table soft2110(xh int,dp nchar(20),pr nchar(20),id nchar(30),nm nchar(20)) bulk insert soft2110 --txt textfrom "d:2104.txt"with(fieldterminator = "\t",rowterminator = "\n")--\t是空格delete from soft2110 where xh=71

示例需要在D盤建立2104.txt文件,示例數據是:

1 軟件學院 軟件2204 31212121212 云夢澤
2 軟件學院 軟件2204 31313131313 上林賦

注意,保存后需要另存為D盤的2104.txt文件進行替換,編碼變成ANSI

增刪改查主要用的是sql sever里的execute函數示例如下:

在你的連接成功后的pycharm里加入以下代碼,實現對上述的表格實現查找:

cur = connect.cursor()sqlstr = "select * from soft2110"cur.execute(sqlstr)data = cur.fetchall()cur.close()for i in range(len(data)):    for t in range(len(data[i])):print(str(data[i][t]).strip(), end="  ")    print("\r")connect.close()

就會得到以下輸出,注意執(zhí)行之后關閉了游標和連接(如果是帶循環(huán)的操作可以將connect.close()放在退出循環(huán)操作執(zhí)行,最后再斷開與sql sever的連接;斷開游標: cur.close() 游標用的時候打開,不用的時候隨即關閉):

1 軟件學院 軟件2204 31212121212 云夢澤
2 軟件學院 軟件2204 31313131313 上林賦

注意其中data是列表里套用元組的形式,以上兩個for循環(huán)是打開列表和元組的過程:

[(1,軟件學院,軟件2204,31212121212,云夢澤),(2,軟件學院,軟件2204,31313131313,上林賦)]

數據查詢用的是:

cur.execute(sqlstr)
data = cur.fetchall()

數據增,刪用的是:

cur.execute(sqlstr)
connect.commit()

示例如下:

print("輸入案例:“醫(yī)學院  臨床2204  349849848  岳陽城”")add = input("請輸入‘學院 專業(yè)  學號 姓名":")try:    cur = connect.cursor()    sqlstr = "select * from soft2110"    cur.execute(sqlstr)    data = cur.fetchall()    sqlstr = f"select * from soft2110 where id = "{add[2]}""    cur.execute(sqlstr)    acc = cur.fetchall()    if acc:print("學號重復,請重新插入")return    try:sqlstr =f"insert into soft2110 values ({len(data) + 1},"{add[0]}","{add[1]}","{add[2]}","{add[3]}")"# print(sqlstr)cur.execute(sqlstr)connect.commit()print("插入成功")    except:print("插入失敗請重試")    cur.close()    connect.close()except:    print("輸入錯誤")

Tip:

sqlstr = f"select * from soft2110 where id = "{add[2]}""

f 和 " "和 { } 結合是將 { } 內的數據帶入進字符串中,達到鏈接的作用,不加 f 中 { } 內的add[2]數據沒辦法讀取到字符串中,達到運算拼接的效果。

例如:

print(f"輸出結果為{2*3}")

打印:輸出結果為6

print("輸出結果為{2*3}")

打印:輸出結果為{2*3}

刪除操作(思路如下):

de = input("請輸入刪除的學號:")
sqlstr = f"delete from soft2110 where id = "{de}""

完整的刪除代碼如下:

def delete(connect, de):    cur = connect.cursor()    sqlstr = f"select * from soft2110 where id = "{de}""    cur.execute(sqlstr)    acc = cur.fetchall()    if acc:sqlstr = f"delete from soft2110 where id = "{de}""cur.execute(sqlstr)connect.commit()cur.close()print("刪除成功")    else:print("學號不存在")cur.close()    returnde = input("請輸入刪除的學號:")try:    delete(connect, de)except Exception as e:    print(f"Error: {e}")

具體的實現方式是,通過 execute( ) 函數將數據庫中的操作移動到python中,先對數據庫的學號進行預判斷,如果沒有這個學號返回學號不存在的輸出,如果學號存在則返回刪除成功,如果發(fā)現其他錯誤則返回刪除失敗用try函數增加了函數的容錯性,通過將except函數,做到輸出錯誤的目的,通過返回的錯誤類型再進行代碼調試。

到此這篇關于如何使用Pycharm連接SQL Sever(詳細教程)的文章就介紹到這了,更多相關Pycharm連接SQL Sever內容請搜索以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持!

標簽: MsSQL
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
美女久久一区| 日韩av中文字幕一区二区三区| 国产精品色婷婷在线观看| 日韩不卡在线观看日韩不卡视频| 香蕉久久夜色精品国产| 亚洲一区二区三区高清不卡| 亚洲少妇一区| 亚久久调教视频| 国产欧美日韩视频在线| 黄色精品视频| 欧美成人国产| 亚洲欧美专区| 精品久久中文| 亚洲精品网址| 日韩精品电影一区亚洲| 精品高清久久| 黑丝美女一区二区| 日本不卡在线视频| 国产成人免费| 激情欧美一区二区三区| 在线看片日韩| 久久一区精品| 日韩视频在线一区二区三区 | 国产精品久久久久久久久久齐齐 | 精品国产亚洲日本| 婷婷综合在线| 欧美日韩1区| 久久免费大视频| 欧美性www| 久久青草久久| 欧美亚洲免费| 亚洲欧美综合| 国产精品99久久免费| japanese国产精品| 国产欧美日韩在线一区二区 | 五月国产精品| 日韩精品中文字幕第1页| 日韩中文字幕麻豆| 97精品中文字幕| 日韩欧美中文字幕在线视频| 中文字幕在线免费观看视频| 亚洲精品麻豆| 久久久久久久久丰满| 欧美日韩18| 伊人精品视频| 国产91在线播放精品| 久热精品在线| 日韩久久精品| 日本成人一区二区| 香蕉精品视频在线观看| 美日韩一区二区三区| 免费久久精品视频| 色婷婷精品视频| 你懂的国产精品| 日韩中文一区二区| 亚洲精品在线观看91| 精品国产网站| 国产欧美自拍| 亚洲日本欧美| 亚洲一区国产| 欧美一级精品| 亚洲成人不卡| 久久亚洲道色| 日本欧美在线| 五月国产精品| 蜜桃免费网站一区二区三区| 1000部精品久久久久久久久| 国产精品大片免费观看| 亚洲精品成人一区| 久久不射中文字幕| 激情综合亚洲| 久久精品中文| 欧产日产国产精品视频| 国产精品99久久免费观看| 中文字幕免费一区二区| 夜夜嗨网站十八久久 | 久久亚洲精品中文字幕蜜潮电影| 久久精品99国产精品日本| 日韩在线一区二区| 国产亚洲永久域名| 国产精品色网| 视频一区欧美精品| 日韩精品一卡二卡三卡四卡无卡| 女同性一区二区三区人了人一| 99国产精品免费视频观看| 色网在线免费观看| 日本在线精品| 亚洲调教视频在线观看| 久久久久久久久久久妇女| 日韩欧美一区二区三区在线观看| 美女一区网站| 九九色在线视频| 91日韩欧美| 激情视频网站在线播放色| 精品国产网站| 日韩激情一区| 久久美女精品| 亚洲激情欧美| 一区二区三区四区在线观看国产日韩 | 亚洲视频综合| 偷拍欧美精品| 麻豆成人在线| 深夜福利一区| 国产欧美日韩一区二区三区在线| 欧美精品观看| 国产欧美久久一区二区三区| 久久免费福利| 国产99久久| 石原莉奈在线亚洲二区| 欧美在线黄色| 成人在线免费观看网站| 日韩精品免费一区二区三区| 黑丝一区二区三区| 亚洲另类黄色| 欧美国产先锋| 日韩天堂在线| 蜜桃久久av| 欧美亚洲三区| 日韩欧美二区| 日韩专区欧美专区| 日本特黄久久久高潮| 精品久久影院| 激情五月色综合国产精品| 蜜臀av一区二区三区| 国产精品自在| 日韩三区在线| 亚洲aa在线| 国产在线不卡一区二区三区| 极品日韩av| 日本在线成人| 国产精品久久久久蜜臀| 亚洲男女自偷自拍| 国产精品theporn| 国产一区久久| 国产毛片一区二区三区| 亚洲深夜视频| 亚洲欧洲日韩精品在线| 国产精品久久久久久久久久10秀| 免费日韩av片| 激情久久99| 日韩在线一二三区| 精品不卡一区| 亚洲精品在线二区| 成人小电影网站| 伊人精品久久| 日韩在线中文| 日韩不卡手机在线v区| 亚洲成人va| 国产亚洲一卡2卡3卡4卡新区| 久久国产欧美| 久久精品99国产精品日本| 亚洲福利专区| 久久不卡国产精品一区二区| 免费视频国产一区| 免费日韩成人| 男女激情视频一区| 国产 日韩 欧美一区| 欧美欧美黄在线二区| 欧美日韩日本国产亚洲在线| 美女毛片一区二区三区四区最新中文字幕亚洲 | 老牛国产精品一区的观看方式| 国产精品v一区二区三区| 久久午夜精品| 久久蜜桃精品| 国产精品香蕉| 一区二区三区四区日韩| 亚洲91久久| 欧美精品第一区| 视频国产精品| 91久久久久| 日韩国产激情| 欧美91在线|欧美| 日本不卡视频在线观看| 亚洲成人一区| 精品国产18久久久久久二百| 日本一区二区三区视频在线看| 久久九九精品| 国产成人精品福利| 国产美女精品视频免费播放软件| 亚洲欧美日韩综合国产aⅴ| 天堂√8在线中文| 久久三级毛片| 欧美极品一区二区三区| 91精品国产一区二区在线观看 | 国产精品久久久久av蜜臀| 丝袜美腿亚洲一区| 国产中文一区| 精品国产欧美日韩| 麻豆成人91精品二区三区| 国产欧美日韩亚洲一区二区三区| 亚洲影视一区| 日韩在线卡一卡二| 一区视频在线| 好看不卡的中文字幕| 一区二区三区四区在线看| 四虎国产精品免费观看| 国产欧美午夜| 国产乱论精品| 国产精久久一区二区| 国产无遮挡裸体免费久久|