La cuestión es que al crear una tabla paradox en runtime, trato de que el nombre de la misma sea introducido por el usuario de la aplicación mediante un InputQuery. El caso es que para validar dicho nombre, compruebo que no sea una cadena vacía y que si su nombre ya coincide con el nombre de otra tabla, nos de la posibilidad de sobreescribir. Sin embargo, cabe la posibilidad de que el usuario introduzca caracteres no válidos para el nombre de una tabla y me gustaría preguntar de qué manera atajo esa posibilidad. Si podeis también facilitarme dónde puedo ver las restricciones de caracteres no válidos os lo agradecería, ya que creo que son '\', '/' y '.', pero no sé si hay alguno más.
Código:
String nombreTabla = ""; //Inicializamos a cadena vacía
TTable *nuevaTabla = new TTable(this);
nuevaTabla->Active = false;
nuevaTabla->DatabaseName = ruta_db;
nuevaTabla->TableType = ttParadox;
//Proceso para asignar el nombre que recibirá la Tabla:
if(InputQuery("Asignar nombre de la tabla","Introduzca el nombre de la nueva tabla",nombreTabla))
{
if(!nombreTabla.IsEmpty()) //Si el nombre de la tabla no es una CADENA VACÍA
{
if(Comprobamos si nombreTabla es válido)
{
nuevaTabla->TableName = nombreTabla; //Asignamos el nombre de la Tabla
//Aquí irían la definición de los campos
nuevaTabla->CreateTable(); //Finalmente, se crea la Tabla
}
else
{
//Volver a intentarlo de nuevo avisando de los caracteres no válidos
}
}
}