Actualmente uso MySql, pero preferiría una solución ODBC para que sea a prueba en el futuro.Cómo desinfectar la entrada de la base de datos ODBC?
¿Cómo saneo la entrada del usuario antes de pasarlo a una base de datos ODBC?
Y, mientras estoy en ello, envuelvo mi cadena entre comillas dobles, p. Ej. "INSERT INTO VALORES (descripción) '' '-, pero lo que si el texto en sí contiene comillas dobles
¿A qué tipo de entrada de usuario se refiere? Por ejemplo, si el usuario le da consultas para ejecutar, tiene mucho trabajo por delante. Además de escapar de los caracteres especiales, como ya ha mencionado, también deberá prestar atención a los problemas de seguridad, como la inyección SQL, y probablemente también quiera limitar el conjunto de declaraciones aceptables (por ejemplo, no lo haga). permitir DDL.) Por otro lado, si el usuario simplemente le da datos y su aplicación utiliza ODBC para escribir los datos en la base de datos, entonces no tiene que hacer nada porque los datos y sus instrucciones SQL no se mezclan. –
posible duplicado de [Delphi - previene contra la inyección de SQL] (http://stackoverflow.com/questions/6000648/delphi-prevent-against-sql-injection) – Johan
ODBC ** no ** lo hará a prueba en el futuro, lo hará hacerlo lento, despojarlo de opciones y hacerlo con errores. Cualquier cantidad de alternativas servirá, ZEOS se puede conectar a aproximadamente 10 bases de datos, también lo puede hacer ADO. – Johan