Te dejo aqui un manual de sql basico :
http://sql.1keydata.com/es/sql-alter-table.php
en cuanto a lo q me has dicho, deberias usar un componente query (y mas adelante, te aconsejo que usases los componentes ADO). Seria algo asi, quiza tenga algun fallo de sintaxis, comillas o parecido:
Código Delphi
[-]
datasource1.Dataset := query1;
query1.Active := false;
query1.SQL.Text := 'alter table ' + nombretabla + ' add ' + edit1.text + ' varchar(50)';
query1.ExecSQL;
como ves, la sentencia sql no es mas que una string. No recuerdo si son necesarias las comillas, entonces debes usar QuotedStr(Edit1.Text). Tambien, si te da excepcion, prueba query1.Active := true: estoy habituado a usar los componentes ADO para estas cosas, y creo que son algo diferentes, a ver si salta alguien que use los nativos de delphi y te lo explica mejor. un saludo.