Tengo una tabla con una serie de permisos, y necesito cambiar el permiso de cada usuario a Y en una posición dada p en la cadena, ¿hay algún comando SQL que pueda usar o hacer? Tengo que escribir un programa/script para hacerlo?Cambiar una char específica en una cadena MySQL
Respuesta
Se puede utilizar una combinación de concat y subcadena en MySQL:
mysql> select concat(substring('12345',1,3),'A',substring('12345',5));
+---------------------------------------------------------+
| concat(substring('12345',1,3),'A',substring('12345',5)) |
+---------------------------------------------------------+
| 123A5 |
+---------------------------------------------------------+
Puede reemplazar '12345' con el nombre de la columna.
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html
sólo tiene que utilizar la función de inserción(). Usted le da la cadena de origen, la cadena que desea insertar y la longitud del carácter. Al igual que:
UPDATE TAB_SAP SET tsap_xgen = INSERT(tsap_xgen, 52, 1, '0') WHERE tsap_unidade = '1392398397' AND SUBSTR(tsap_xgen,52,1) != '0'
En este caso, buscar un registro de un bombero (Sapador) que pertenecen a una empresa (Unidade) y que como un indicador específico en una cadena (la SUBSTR (tsap_xgen, 52,1) ! = '0' parte de la cláusula WHERE), luego actualizo esta cadena para cambiar el carácter a '0'. Usando insert() puede cambiar más de un carácter, por ejemplo INSERT (field_name, 52, 5, 'Hello')
Observe que el nombre de la función es "extraño" ya que no "inserta" sino que "borra" char en la ubicación para poner los nuevos caracteres.
- 1. cambiar una caracter en una cadena c
- 2. En Java, ¿cómo se convierte una Cadena en un char o un char en una Cadena?
- 3. ¿Cómo cambiar 1 char en la cadena?
- 4. C++: inserte char en una cadena
- 5. Eliminar una palabra específica de una cadena
- 6. PHP: dividir una cadena en una matriz foreach char
- 7. ¿Cómo encriptar una columna específica en una tabla MySQL?
- 8. La cadena no puede cambiar. Pero int, char puede cambiar
- 9. ¿Cuántos bytes toma una cadena? ¿Un char?
- 10. Representando una Char con cadena equivalente
- 11. ¿Cómo obtener una línea específica de una cadena en C#?
- 12. Hash de una cadena de longitud específica
- 13. ¿Cómo reemplazo una comilla doble con una comilla doble escape-char en una cadena usando javascript?
- 14. ¿Cambiar a una pestaña específica en Vim como en Firefox?
- 15. Conversión de una cadena int o de cadena en una matriz char en Arduino
- 16. Cómo particionar una tabla MySQL basada en la columna char?
- 17. ¿Cómo convierto una cadena en un char * en C++?
- 18. ¿Reemplazar un char en un índice dado en una cadena?
- 19. Viendo una tabla para cambiar en MySQL?
- 20. Obtener una cadena después de una subcadena específica
- 21. int en una cadena en mysql
- 22. Consultar en MySQL para campos de cadena con una longitud específica
- 23. Cómo determinar si una cadena contiene una subcadena específica
- 24. Reemplazar una parte específica de una cadena de consulta PHP
- 25. MySql - ¿Cómo actualizar parte de una cadena?
- 26. cómo copiar char * en una cadena y viceversa
- 27. Encuentra el índice de un char en una cadena?
- 28. cómo asignar una cadena a char * pw en C++
- 29. Poner char en una cadena java para cada N caracteres
- 30. Cómo convertir un puntero char * en una cadena C++?
Sugerir para usar la función de inserción(). Guido parece realizar un cambio de un char por otro. Entonces insertar() será correcto. El uso de la subcadena() será correcto si se desea cambiar, por ejemplo, 5 caracteres por 10 caracteres, por lo que cuando fuente-longitud! = Dest-longitud. – Peter