pymssql·ÃÎÊsqlserverµÄÒ»¸öbug
¡¡¡¡¶ÔÊý¾Ý¿â½øÐжà±í²Ù×÷£¬Èç¹û±íÓë±íÖ®¼ä´æÔÚÒÀÀµ£¬ÄÇôÏÔʽµÄʹÓÃÊÂÎñ£¬¿ÉÒÔ±£³Ö¶ÔÊý¾Ý¿â²Ù×÷µÄÔ×ÓÐÔ¡£ÓÃPython·ÃÎÊSqlServerÊý¾Ý¿â£¬ÎÒʹÓÃpymssql¿â¡£½ñÌìÔÚʹÓÃÕâ¸ö¿âµÄʱºò£¬·¢ÏÖÒ»¸öÎÊÌâ¡£
ÎÊÌâ´ó¸ÅÊÇÕâÑùµÄ£º
¡¡¡¡ÎÒÓÐÁ½ÕÅ±í£¬Ò»ÕÅÖ÷±í£¨ClassInfo£©£¬Ò»ÕÅ´Ó±í£¨Student£©£¬Student±íͨ¹ýÍâ¼üClassIDÓëClassInfo±í½øÐйØÁª¡£ÕâÁ½ÕűíµÄÖ÷¼ü¶¼ÊÇ×ÔÔöÐ͵ÄintÐÍ×ֶΡ£
¡¡¡¡´´½¨±íµÄSQLÓï¾äÈçÏ£º
CREATE TABLE ClassInfo(
ClassID INT IDENTITY(1, 1) PRIMARY KEY,
ClassName VARCHAR(20) NOT NULL
)
GO
CREATE TABLE Student(
StudentID INT IDENTITY(1, 1) PRIMARY KEY,
ClassID INT NOT NULL,
StudentName VARCHAR(20) NOT NULL,
FOREIGN KEY (ClassID) REFERENCES ClassInfo(ClassID)
)
GO
¡¡¡¡ÔÚ´úÂëÖУ¬ÏÈ´´½¨Ò»¸ö°à¼¶£¬È»ºóÔڰ༶ÖвåÈëѧÉúÊý¾Ý¡£Èç¹ûÕâÁ½¸ö²Ù×÷ÔÚÒ»¸öÊÂÎñÖÐÍê³É£¬Ò»°ãÇé¿öÏ£¬°´ÕÕpymssqlÌṩµÄÎĵµ£¬ÎÒÃÇ»áдÕâÑùµÄÓï¾äÀ´ÊµÏÖ£º
import pymssql
conn = pymssql.connect(host = 'JGood\\SQLEXPRESS', database = "Study",
user = "sa", password = "sa")
cur = conn.cursor()
#ÍùÖ÷±íÖÐÌí¼ÓÒ»Ìõ¼Ç¼
cur.execute("INSERT INTO [ClassInfo] ([ClassName]) VALUES (%s)", 'jk0403')
#»ñÈ¡ID¡£
cur.execute("SELECT @@identity as ID")
classID = cur.fetchone()[0]
#Íù´Ó±íÖÐÌí¼Ó¼Ç¼
cur.execute("INSERT INTO [Student] (ClassID, StudentName) VALUES (%d, %s)",
(classID, 'JGood'))
conn.commit()
cur.close()
conn.close()
¡¡¡¡µ«ÊǺÜÒź¶£¬ÔÚÔËÐдúÂëµÄʱºò£¬³ö´íÁË£º
¡¡¡¡Èç¹ûÎÒ°ÑÉÏÃæµÄ²Ù×÷·Ö³ÉÁ½¸ö¶ÀÁ¢µÄÊÂÎñÀ´ÊµÏÖ£¬·¢ÏÖÊÇûÓÐÎÊÌâµÄ¡£
¡¡¡¡¾¹ýÒ»ÏÂÎçµØÃþË÷£¬ÖÕËãÕÒµ½Ò»¸ö½â¾ö°ì·¨£¬¾ÍÊǰÑ×ÔÔöµÄIDÒÔÆ´×Ö·û´®µÄÐÎʽÌí¼Óµ½SQLÓï¾äÀ¶ø²»ÊÇÒÔSQL²ÎÊýµÄÐÎʽ¡£
#Íù´Ó±íÖÐÌí¼Ó¼Ç¼
cur.execute("INSERT INTO [Student] (ClassID, StudentName) VALUES (" + str(classID) + ", %s)", ('JGood', ))
¡¡¡¡ÎÒ²»ÖªµÀÕâËã²»ËãÊÇpymssqlµÄÒ»¸öbug£ºÔÚÒ»¸öÊÂÎñÖУ¬¶ÔÓÚ×Ô¶¯Éú³ÉµÄÍâ¼üÖµ£¬²»ÄÜÒÔSQL²ÎÊýµÄÐÎʽ²åÈëÊý¾Ý¿â¡£
Ïà¹ØÎĵµ£º
Ò»¡£SqlServer×Ô¶¯×÷Òµ±¸·Ý
1¡¢´ò¿ªSQL Server Management Studio
2¡¢Æô¶¯SQL Server´úÀí
3¡¢µã»÷×÷Òµ->н¨×÷Òµ
4¡¢"³£¹æ"ÖÐÊäÈë×÷ÒµµÄÃû³Æ
5¡¢Ð½¨²½Ö裬ÀàÐÍÑ¡T-SQL£¬ÔÚÏÂÃæµÄÃüÁîÖÐÊäÈëÏÂÃæÓï¾ä
DECLARE @strPath NVARCHAR(200)
set @strPath = convert(NVARCHAR(19),getdate(),120)
set @strPath=replace(@ ......
ÈçºÎ²é¿´SQL SERVERÊý¾Ý¿âµ±Ç°Á¬½ÓÊý
1.ͨ¹ý¹ÜÀí¹¤¾ß
¿ªÊ¼->¹ÜÀí¹¤¾ß->ÐÔÄÜ£¨»òÕßÊÇÔËÐÐÀïÃæÊäÈë mmc£©È»ºóͨ¹ýÌí¼Ó¼ÆÊýÆ÷Ìí¼Ó SQL µÄ³£ÓÃͳ¼Æ È»ºóÔÚÏÂÃæÁгöµÄÏîÄ¿ÀïÃæÑ¡ÔñÓû§Á¬½Ó¾Í¿ÉÒÔʱʱ²éѯµ½Êý¾Ý¿âµÄÁ¬½ÓÊýÁË¡£²»¹ý´Ë·½·¨µÄ»°ÐèÒªÓзÃÎÊÄÇ̨¼ÆËã»úµÄȨÏÞ£¬¾ÍÊÇҪͨ¹ýWindowsÕË»§µÇ½½øÈ¥²Å¿ÉÒÔÌí¼Ó´Ë¼ÆÊ ......
=================·ÖÒ³==========================
/*·ÖÒ³²éÕÒÊý¾Ý*/
CREATE PROCEDURE [dbo].[GetRecordSet]
@strSql varchar(8000),--²éѯsql,Èçselect * from [user]
@PageIndex int,--²éѯµ±Ò³ºÅ
@PageSize int--ÿҳÏÔʾ¼Ç¼
AS
set nocount on
declare @p1 int
declare @current ......
· ±¾ÎÄÌÖÂÛÁËÈçºÎͨ¹ýTransact-SQLÒÔ¼°ÏµÍ³º¯ÊýOPENDATASOURCEºÍOPENROWSETÔÚͬ¹¹ºÍÒì¹¹Êý¾Ý¿âÖ®¼ä½øÐÐÊý¾ÝµÄµ¼Èëµ¼³ö£¬²¢¸ø³öÁËÏêϸµÄÀý×ÓÒÔ¹©²Î¿¼¡£
1. ÔÚSQL ServerÊý¾Ý¿âÖ®¼ä½øÐÐÊý¾Ýµ¼Èëµ¼³ö
(1).ʹÓÃSELECT INTOµ¼³öÊý¾Ý
  ......
SQLserver×Ö·û´®·Ö¸îº¯Êý
Ò»¡¢°´Ö¸¶¨·ûºÅ·Ö¸î×Ö·û´®£¬·µ»Ø·Ö¸îºóµÄÔªËØ¸öÊý£¬·½·¨ºÜ¼òµ¥£¬¾ÍÊÇ¿´×Ö·û´®ÖдæÔÚ¶àÉÙ¸ö·Ö¸ô·ûºÅ£¬È»ºóÔÙ¼ÓÒ»£¬¾ÍÊÇÒªÇóµÄ½á¹û¡£
CREATE function Get_StrArrayLength
(
@str varchar(1024), --Òª·Ö¸îµÄ×Ö·û´®
@split varchar(10) --·Ö¸ô·ûº ......