Modificación dinámica de sentencias SQL en PB[1]
Las aplicaciones de bases de datos generalmente requieren un trabajo determinado y se puede determinar la declaración SQL completa al escribir. compilando, pero cuando necesita usar PowerBuilder, no admite declaraciones SQL incorporadas o el formato y los parámetros específicos de la declaración SQL no se pueden determinar en el momento de la compilación y solo se pueden construir cuando el programa se está ejecutando. Pero cuando necesita usar una declaración SQL que PowerBuilder no admite declaraciones SQL incorporadas o el formato y los parámetros específicos de la declaración SQL no se pueden determinar en el momento de la compilación y solo se pueden construir durante la ejecución del programa, debe usar la declaración SQL dinámica. formato. Tome la instrucción SQL dinámica como ejemplo. El siguiente formato es DECLARAR Cursor | Procedimiento CURSOR DINÁMICO PARA DynamicStagingArea
PREPARE DynamicStagingArea FROM SQLStatement {USING TransactionObject}; DynamicStagingArea EN DynamicDescriptionArea;
ABRIR Cursor DINÁMICO | Procedimiento USANDO DESCRIPTOR DynamicDescriptionArea}
EJECUTAR Procedimiento DINÁMICO USANDO DESCRIPTOR DynamicDescriptionArea ; > FETCH Cursor | Procedimiento USING DESCRIPTOR DynamicDescriptionArea ;
CLOSE Cursor
Prepare el objeto DynamicStagingArea (objeto global SQLSA) y el objeto DynamicDescriptionArea (objeto global SQLDA) cuando utilice sentencias SQL dinámicas. Defina un cursor o procedimiento almacenado para leer las declaraciones SQL en la declaración PREPARE y la declaración SQL en la declaración. Lea la declaración SQL en la declaración PREPARE y los parámetros y tipos especificados en la declaración. Después de ejecutar la declaración FETCH, llame a las funciones relevantes para leer y procesar los resultados de la recuperación uno por uno. Las declaraciones de SQL dinámico pueden construir declaraciones SQL durante la ejecución del programa, pero rara vez se utilizan en aplicaciones prácticas. Para realizar la función de modificar dinámicamente declaraciones SQL, primero use la función Describir para leer la declaración SELECT del objeto DataWindow, use la función Reemplazar para modificar la declaración SELECT para cumplir con los requisitos y agregue condiciones de búsqueda, y luego use la función SetSQLSelect para especificar la instrucción SELECT modificada para el control DataWindow. Sentencia SELECT
Código de programa string sql_string sql_new long start_pos= string old_str //La cadena que se reemplazará en la instrucción de selección string new_str //La cadena de reemplazo puede ser el nombre de una tabla con la misma estructura p>
Utilice la instrucción SELECT en el control DataWindow. lishixinzhi/Article/program/PB/201311/24558