Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

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²ÎÊýµÄÐÎʽ²åÈëÊý¾Ý¿â¡£


Ïà¹ØÎĵµ£º

.netѧϰ×ܽᣨ6£©Ö®sqlserver ×Ô¶¨Ò庯ÊýÓë´æ´¢¹ý³Ì

 21 Ò»¸öSQLServerµÄ×Ô¶¨Ò庯ÊýÖе÷ÓÃÒ»¸ö×Ô¶¨ÒåµÄ´æ´¢¹ý³Ì£¬Ö´Ðд˺¯Êýºó·¢³öÈçÏÂÌáʾ£º“Ö»Óк¯ÊýºÍÀ©Õ¹´æ´¢¹ý³Ì²ÅÄÜ´Óº¯ÊýÄÚ²¿Ö´ÐÐ"¡£
 Ô­Òò£ºº¯ÊýÖ»ÄÜʹÓüòµ¥µÄsqlÓï¾ä,Âß¼­¿ØÖÆÓï¾ä£¬¸´ÔÓÒ»µãµÄ´æ´¢¹ý³ÌÊDz»Äܵ÷Óõģ¬ÔÚº¯ÊýÀïÒ²²»ÄÜʹÓÃexecute  sp_executesql  »òÕßexecute ¡£½â¾ö·½·¨°Ñ ......

oracleÓësqlserverÖ´ÐÐcount(*)·µ»ØµÄ½á¹û¼æÈÝ

ÓÉÓÚÒÔǰ¶¼ÊÇÔÚsqlserver 2005´¦Àí£¬ÏÖÔÚ¿Í»§ÒªÇóoracleÊý¾Ý¿â·þÎñÆ÷£¬
×î³õµÄ´úÂëΪ£º
allRecordSize = (Integer) rs1.getObject(1);    //Integer allRecordSize=0;
µ±Ö´ÐеÄʱºò±¨£ºBigDecimalÎÞ·¨×ª»¯ÎªIntegerÀàÐÍ
ΪÁ˼æÈÝÁ½ÕßÐ޸ĺóµÄ´úÂëΪ£º
  Object o = rs1.getObject(1);
 &nbs ......

sqlserver:openrowset / oracle:table/view@dblinkÃû

Ö»ÊÇsqlserver ÌṩµÄÔ¶³ÌÊý¾Ý·ÃÎʺ¯Êý;  ÔÚ±¾µØsqlserver ÖÐÈ¡ÍⲿÊý¾ÝÔ´Êý¾Ýʱºò¿ÉÓÃ;
¶ÔÁ¬½Ó±¾µØ oracle ²Ù×÷Ô¶³Ì oracle ²»ÄÜʹÓÃ; ²âÊÔ: pl/sql ÖÐʹÓÃ:
select * from openrowset(................); ÎÞЧ!!!!!!!!!!!!!!
ÔÚoracle ÖÐÐèÒª·ÃÎÊÔ¶³ÌÊý¾Ý,ÐèÒª½¨Á¢Ò»Á¬½ÓÔ¶³Ìoracle µÄ dblink ;
ÔÙÓÃÈçÏ·½ ......

ʹÓÃSQLServerÄ£°åÀ´Ð´¹æ·¶µÄSQLÓï¾ä

Èç¹ûÄã¾­³£Óöµ½ÏÂÃæµÄÎÊÌ⣬Äã¾ÍÒª¿¼ÂÇʹÓÃSQL ServerµÄÄ£°åÀ´Ð´¹æ·¶µÄSQLÓï¾äÁË£º
SQL³õѧÕß¡£
¾­³£Íü¼Ç³£ÓõÄDML»òÊÇDDL SQL Óï¾ä¡£
ÔÚ¶àÈË¿ª·¢Î¬»¤µÄSQLÖУ¬Ã¿¸öÈ˶¼ÓÐ×Ô¼ºµÄSQLϰ¹ß£¬Ã»ÓÐÒ»Ì×ͳһµÄ¹æ·¶¡£
ÔÚSQL Server Management StudioÖУ¬ÒѾ­¸ø´ó¼ÒÌṩÁ˺ܶೣÓõÄÏÖ³ÉSQL¹æ·¶Ä£°å¡£
SQL Server Management ......

SQLserver×Ö·û´®·Ö¸îº¯Êý

SQLserver×Ö·û´®·Ö¸îº¯Êý
Ò»¡¢°´Ö¸¶¨·ûºÅ·Ö¸î×Ö·û´®£¬·µ»Ø·Ö¸îºóµÄÔªËØ¸öÊý£¬·½·¨ºÜ¼òµ¥£¬¾ÍÊÇ¿´×Ö·û´®ÖдæÔÚ¶àÉÙ¸ö·Ö¸ô·ûºÅ£¬È»ºóÔÙ¼ÓÒ»£¬¾ÍÊÇÒªÇóµÄ½á¹û¡£
CREATE function Get_StrArrayLength
(
  @str varchar(1024),  --Òª·Ö¸îµÄ×Ö·û´®
  @split varchar(10)  --·Ö¸ô·ûº ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ