Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

MSSQL2008 - Pyodbc - Предишният SQL не беше заявка

Само в случай, че някой самотен мрежов номад попадне на този проблем, решението от Torxed не работи за мен. Но следното работи за мен.

Извиквах SP, който вмъква някои стойности в таблица и след това връща някои данни обратно. Просто добавете следното към SP :

SET NOCOUNT ON

Ще работи добре :)

Кодът на Python :

    query = "exec dbo.get_process_id " + str(provider_id) + ", 0"
    cursor.execute(query)

    row = cursor.fetchone()
    process_id = row[0]

SP :

USE [DBNAME]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[GET_PROCESS_ID](
    @PROVIDER_ID INT,
    @PROCESS_ID INT OUTPUT
)
AS
BEGIN
    SET NOCOUNT ON
    INSERT INTO processes(provider_id) values(@PROVIDER_ID)
    SET @PROCESS_ID= SCOPE_IDENTITY()
    SELECT @PROCESS_ID AS PROCESS_ID
END


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Можете ли да създадете CLR UDT, за да позволите споделен тип таблица в базите данни?

  2. Не можете да се свържете към SQL сървър 2008?

  3. Как да получите стойността от стъпка 1 до стъпка 2 в sql Job

  4. Изчислете хеш или контролна сума за таблица в SQL Server

  5. Как мога да генерирам INSERT скрипт за таблица с поле VARBINARY(MAX)?