Casa
Top.Mail.Ru Yandeks.Metrika
Foro: "Bases";
Archivo actual: 2003.09.01;
Descargar: [xml.tar.bz2];

abajo

Al igual que en la consulta SELECT, puede tener varios campos del mismo tipo Encontrar ramas similares


ED   (2003-08-06 11:26) [0]

Como en petición SELECCIONAR ¿Se podrían combinar varios campos de un tipo en un campo? a CONSULTA en lugar de tres campos había uno)



HSolo   (2003-08-06 11:28) [1]

Campos de texto - campo1 || campo2 || field3
Algo más: lanzar (field1 como varchar (100)) || ...



Sergey Masloff   (2003-08-06 11:31) [2]

y recuerde: si al menos uno de ellos es NULL, entonces el resultado es NULL



Sergey13   (2003-08-06 11:33) [3]

O combínalos en un campo calculado en el cliente.



ED   (2003-08-06 11:37) [4]

¿Y qué pasa si los campos se fusionan? campo1 || campo2 || field3 ¿Necesitas hacer agrupaciones? ( GRUPO POR ...)



Sergey13   (2003-08-06 11:47) [5]

Entonces mi consejo es mejor para ti. 8-) En la consulta 3, los campos y agrupación por ellos. En el cliente 1, la fuente calculada = 3. Mostrarlo



ED   (2003-08-06 11:49) [6]

Es posible evitar la solicitud a la base de datos " si al menos uno de ellos es NULL, entonces el resultado es NULL"?"



HSolo   (2003-08-06 11:52) [7]

¿Qué significa "evitar"?
Eliminar nula?
seleccione ... donde no (field1 es nulo)
¿Para procesar nulo? Procedimiento almacenado o UDF



ED   (2003-08-06 12:09) [8]

Quise decir

field1 = "Mi"
field2 = NULL
field3 = "campo"

=================
El resultado es "Mi campo"



HSolo   (2003-08-06 12:25) [9]

Luego UDF o almacenamiento.
Si tuviera un campo con posibles nulos, podría tener otro sindicato. Pero como estos campos son 3 (¿entiendo?), Habrá muchas combinaciones :)



MsGuns   (2003-08-06 12:30) [10]

Es posible a través de la Unión, integrando select, "ordenando" en la cláusula where todas las combinaciones posibles con NULL



HSolo   (2003-08-06 12:42) [11]

Por supuesto, usted puede, solo para campos 3 - combinaciones 8. No mucho sera? :)



MsGuns   (2003-08-06 12:46) [12]

> HSolo © (06.08.03 12: 42)
> ¿No será demasiado? :)

Si la patria dice "¡es necesario!"
Entonces ED responderá a su "¡ES!"


;)))



NataliK   (2003-08-06 14:52) [13]

Disculpe, ¿qué obtengo y qué es UDF?
Tengo un problema similar y la Unión no funcionará. Realmente un poco demasiado!



HSolo   (2003-08-06 15:18) [14]

Función definida por el usuario - función definida por el usuario
Más:
http://www.ibase.ru/develop.htm (как писать)
http://www.ibase.ru/d_udf.htm (готовые)



Sergey13   (2003-08-06 15:42) [15]

2ED (06.08.03 11: 49)
¿Y qué pasa con mi versión de Sergey 13 © (06.08.03 11: 47) no funciona? En mi humilde opinión justo. Hacer en el cliente con estos campos en ella.



MsGuns   (2003-08-06 16:04) [16]

> Sergey13 © (06.08.03 15: 42)

¿Quizás no usa los campos Calc y no conoce el evento onGetText fields?



Sergey13   (2003-08-06 16:08) [17]

2MsGuns © (06.08.03 16: 04)
> ¿Quizás no usa los campos Calc y no conoce los campos OnGetText del evento?
Entonces no tiene sentido avisar a UDF o verificar NULL. 8-)



HSolo   (2003-08-06 16:20) [18]

No siempre se quiere colgar el procesamiento en el cliente. Por ejemplo, algo así como informes genéricos hechos por nosotros mismos: la base de datos contiene textos de consulta, selecciona el correcto, alimenta el servidor, proporciona la muestra resultante para imprimir, para Excel o donde el alma lo desee. En esta situación, es deseable que en la muestra todo estuviera en su forma final.



MsGuns   (2003-08-06 16:41) [19]

> HSolo © (06.08.03 16: 20)
> No siempre quiero colgar el procesamiento en el cliente

¿Alguna vez ha visto una base en medidores 11 con tablas 5 con no más de registros 1000 en total? Pero el mar de HP, vistas, generadores, etc. ¡Pero todo (creo que el porcentaje de 500) está en el servidor! ¡¡¡Las heces son negras !!!

Un sentido de la proporción es un sentimiento raro;



HSolo   (2003-08-06 16:58) [20]

> MsGuns © (06.08.03 16: 41)

> ¿Alguna vez ha visto una base en medidores 11 con tablas 5 con no más de registros 1000 en total? Pero el mar de HP, vistas, generadores, etc. ¡Pero todo (creo que el porcentaje de 500) está en el servidor! ¡¡¡Las heces son negras !!!

Ups. Y no quiero ver :( ¿Pero no vamos a llegar a los extremos? Ni de la forma en que lo describa, ni algo parecido a 1С, cuando todo se arrastra al cliente y se procesa allí. Se requiere un saldo razonable :)

> Un sentido de la proporción es un sentimiento raro;
Esto es exactamente (c) t.Suhov





Sergey Masloff   (2003-08-06 19:50) [21]

MsGuns © (06.08.03 16: 41)

> ¿Alguna vez ha visto una base en medidores 11 con tablas 5 en las cuales no había más de registros 1000 en total?
Bueno, ¿y qué? Bueno, hice algo similar ahora. Funciona muy rápido. Al menos problemas con la actualización: envié el script 100 a KB y cambié la mitad de la lógica de trabajo. Y no envíes cientos de EXE. Y hay unos cuatrocientos de ellos. Ahora En seis meses, quizás 1000 sea. Y no digo que no se compruebe nada en el cliente, se comprueba. Pero todo el tipo de DisplayMask y máscaras para TMaskEdit se extraen del servidor. Entonces .exe es siempre el mismo (idealmente, este no es siempre el caso).



Sergey13   (2003-08-07 09:03) [22]

© 2HSolo (06.08.03 16: 20)
> No siempre se quiere colgar el procesamiento en el cliente. Por ejemplo, algo así como genéricos de informes hechos a sí mismos ...

Bueno, aquí, creo, otro caso. Sobre todo porque, por lo general, este "generalki" funciona según el principio de "lo que ve y lo imprime".

2Sergey Masloff ( 06.08.03 19: 50) 2HSolo © (06.08.03 16: 20)
> No siempre se quiere colgar el procesamiento en el cliente. Por ejemplo, algo así como genéricos de informes hechos a sí mismos ...

Bueno, aquí, creo, otro caso. Sobre todo porque, por lo general, este "generalki" funciona según el principio de "lo que ve y lo imprime".

2Sergey Masloff (06.08.03 19: 50)
> Bueno, ahora hice algo similar. Funciona muy rápido.
Quién dudaría.

> Al menos problemas con la actualización: envié el script 100 a KB y cambié la mitad de la lógica del trabajo. Y no envíes cientos de EXE.

Pero es necesario enviar cientos de este script. 8-) Por cierto, no es tan bueno, IMHO. Si el EXE se actualizó incorrectamente, simplemente no funcionará, pero si algo se resolvió en el script, entonces puede base de trabajo perder o estropear a fondo.

> Y hay unos cuatro de ellos (instalaciones). Ahora En seis meses, quizás 1000 sea.
El negocio está creciendo. Felicidades

> Entonces .exe es siempre el mismo (idealmente, este no es siempre el caso).
Esto es lo que probablemente nunca entenderé. ¿Qué es esto? Escriba Notepad y use el nuevo archivo de parámetros para convertirlo en un MsWord? 8-)
De todos modos, la "lógica de trabajo" no es solo la estructura de las tablas y sus relaciones. También es, por ejemplo, ingresar nuevas / eliminar acciones de usuarios anteriores => nuevos formularios, etc. Si todo esto se hace cada vez que inicia el programa desde el servidor, entonces ... ¿Vale la pena?

No estoy en contra del procesamiento del servidor, estoy a favor de ... Para una combinación razonable con el procesamiento en el cliente. Y la "facilidad de actualización" es el factor 101 aquí.
En mi humilde opinión con respecto a realmente "lógica de trabajo" y no necesita las acciones del operador (solo inicia el proceso), debe estar en el servidor y estar resuelto. En cuanto a la visualización de datos (en un sentido amplio), deje que el cliente lo haga.

PD: Es curioso cómo surgió la discusión de la pregunta original. 8-)



Sergey Masloff   (2003-08-07 09:30) [23]

Sergey13 © (07.08.03 09: 03)
> De todos modos, "lógica de trabajo" no es solo la estructura de las tablas y sus relaciones. También es, por ejemplo, ingresar nuevas / eliminar acciones antiguas> usuario => formularios nuevos, etc. Si todo esto se hace en cada inicio del programa desde el servidor, entonces ... ¿Vale la pena?

Sergey, creo que realmente me entendiste. Naturalmente, si aparece un formulario realmente NUEVO, aparece (aunque es posible modificar con .dfm en la base de datos, etc., pero ...). Otra cosa es si en los resultados de la selección hay otro campo. Supongamos que estamos buscando en el libro de referencia de Vasya Pupkin, mientras encontramos que mostramos una lista de otros similares. La base ha crecido y Vasya Pupkin está allí con 50. Para distinguir, también debe mostrar el año de nacimiento. ¿No cambias la misma forma en exe?

> Pero es necesario enviar cientos de este script. 8-) Por cierto, esto no es tan bueno, IMHO. Si el EXE se actualizó incorrectamente, simplemente no funcionará>, pero si algo se resolvió en el script, entonces es posible perder o dañar la base de trabajo a fondo.
Bueno, ¿por qué exagerar tanto? Sin embargo, automatizado. El guión está siendo probado. Entonces al enviar se considera una suma de comprobación. Cuando el usuario llega al punto de destino, el usuario presiona el botón 1. Después de esto, se inicia un proceso que:
1) Comprueba la versión actual de la base de datos (si las actualizaciones anteriores están instaladas)
2) Comprueba la suma de comprobación del script enviado.
3) Hace bases de datos de respaldo
4) Ejecuta el script
5) Analiza (posibles) errores
6) Si no todos los formularios OK reportan
Así funciona. Hasta hace poco (mientras que las instalaciones eran 200), generalmente lo hacía solo, y este proyecto es "subproducto" para mí (no hago la mayor parte del tiempo de trabajo). Y cada correo exe es un problema. Deberían cambiarlo en cada cliente, allí lo cambiaron, lo olvidaron y entienden dónde ;-)

> Curioso cómo llegó la discusión.







Sergey13   (2003-08-07 09:40) [24]

2Sergey Masloff ( 07.08.03 09: 30) 2Sergey Masloff (07.08.03 09: 30)
Es difícil e inútil discutir sobre los gustos.
"Tú y yo, ambos tenemos razón, a la derecha, a la derecha" (c) Alla Pugacheva.
8-)



Sergey Masloff   (2003-08-07 09:56) [25]

Sergey13 © (07.08.03 09: 40)
> Es difícil e inútil discutir sobre los gustos.
Así que no parece que discutamos. Usted dijo que necesita un compromiso entre el cliente y el servidor y que acepté. Después de haber agregado un compromiso, es diferente en cada caso particular. Todavía no he encontrado la media de oro ... Lo hice y (casi) todo en el cliente y (casi) todo en el servidor. Y eso es bueno y eso no es malo ...



Danilka   (2003-08-07 11:14) [26]

Sergey Masloff ( 06.08.03 19: 50) Sergey Masloff (06.08.03 19: 50)
A expensas de cientos de clientes, tenemos este problema resuelto por el hecho de que ekzeshnik y todos los archivos adicionales: bpl-ki, tal vez algo más se encuentra en la base de datos.
Y el cliente primero inicia el cargador de arranque, que verifica los archivos en la base de datos con los archivos en el cliente, si hay más de una versión en el servidor, luego los descarga, y luego inicia el programa principal.
En principio, esto se hace para clientes grandes, le permite actualizar el software en Internet y es más simple (y quizás más conveniente) en sí mismo: la última versión compilada está en un CVS-ke, como regla general, ejecuta un archivo por lotes que verifica los archivos en CVS muy rápidamente. Ke con lo que está en mi disco, descarga las últimas versiones de los archivos modificados y luego solo inicia el programa.



Danilka   (2003-08-07 11:15) [27]

Sergey Masloff
ps. ¿Recibiste tu apodo, o eres tan astuto? :))



Páginas: 1 rama entera

Foro: "Bases";
Archivo actual: 2003.09.01;
Descargar: [xml.tar.bz2];

arriba









Memoria: 0.67 MB
Tiempo: 0.049 c
7-1686
Jumbo
2003-06-17 04:52
2003.09.01
Taller de ayuda de Microsoft


14-1547
Ken
2003-08-07 02:06
2003.09.01
Virus html encontrado. ¿Cómo proteger IENNX de esto?


1-1394
Club duro
2003-08-15 23:25
2003.09.01
Copiar archivos


7-1675
Lightix
2003-06-19 15:42
2003.09.01
idioma de entrada del teclado


3-1333
n13
2003-08-07 15:08
2003.09.01
archivos dbf





africaans albanés Arabic armenio Azerbaiyán vasco Bielorruso Bulgarian Catalán Chino (simplificado) Chino (tradicional) Croata Checo Danés Dutch Inglés Estonia filipina Finnish Francés
gallego georgiano Alemán Griego criollo haitiano hebreo hindi Húngaro islandés Indonesian irlandés Italiana Japonés Korean letón lituano macedonio Malay maltés Noruego
persa polaco Portuguese Rumano Ruso Serbio Slovak Esloveno Español swahili Sueco Thai turco ucranio Urdu vietnamita galés yídish bengalí bosnio
cebuano esperanto gujarati hausa hmong igbo javanés kannada khmer lao latín maorí marathi mongol nepali punjabi somalí Tamil telugu yoruba
zulú
Английский Francés Alemán Italiano portugués Русский Español