.NET MySqlCommand가 MySQL 사용자 정의 변수를 활용할 수 있습니까?
MySqlAdapter를 사용하여 .NET에서 MySQL 쿼리를 실행하면 쿼리에서 다음을 사용하는 경우 문제가 발생할 수 있습니다. 사용자 정의 변수.
특정 쿼리 시도:
다음 SQL 문은 고유 행에 행 번호를 할당하려고 시도합니다.
SELECT @rownum := @rownum +1 rownum, t . * FROM ( SELECT @rownum :=0 ) r, ( SELECT DISTINCT TYPE FROM `node` WHERE TYPE NOT IN ('ad', 'chatroom') )t
예외 발생:
이 쿼리가 .NET에서 실행되면 @rownum 변수는 명시적인 정의가 필요한 매개변수로 해석되기 때문에 예외가 발생합니다.
해결책:
이 문제를 해결하려면 해당 사용자를 지정해야 합니다. 연결 문자열에는 변수가 허용됩니다. 이는 다음 매개변수를 추가하여 달성할 수 있습니다.
;Allow User Variables=True
업데이트된 연결 문자열:
sqlConnection.ConnectionString = "Data Source=localhost;Initial Catalog=myDb;Username=myUser;Password=myPwd;Allow User Variables=True";
추가 정보:
이 솔루션은 최신 버전의 .NET Connector for MySQL과 호환됩니다. 자세한 내용은 [MySQL을 사용하여 .NET에서 사용자 정의 변수를 사용하는 방법](링크된 블로그) 블로그를 참조하세요.
위 내용은 .NET MySqlCommand가 MySQL 사용자 정의 변수를 사용할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!