Tracking Forums, Newsgroups, Maling Lists
Home Scripts Tutorials Tracker Forums
 
  HOME    TRACKER    MYSQL




Editing Values In A Table


I just moved from SQL Server to MySQL and in the Enterprise Manager in SQL Server I could query the entire table and then modify the values with the table without writing an UPDATE statement.
I cannot do that in one of my tables because the EDIT at the bottom is greyed out. There are other tables where I can make a modification to any value I want within the table.




View Complete Forum Thread with Replies

See Related Forum Messages: Follow the Links Below to View Complete Thread
Editing Values In PhpMyAdmin
i'm trying to modify my dbase via phpmyadmin and, obviously, am new to mySQL and such (hence the newbie forum)

wondering... a command like this:
##CREATE TABLE phpbb2_forums_watch (
## forum_id smallint(5) unsigned NOT NULL default '0',
## user_id mediumint(8) NOT NULL default '0',
## notify_status tinyint(1) NOT NULL default '0',
## KEY forum_id (forum_id),
## KEY user_id (user_id),
## KEY notify_status (notify_status)
## )

I've been able to add the table easily enough w/ the three values -- but what does
KEY forum_id(forum_id),
do? How can i do this in phpMyAdmin?

Editing Row Data In A Table Using Mysql
I'm trying to edit the data in a table using mysql.

As far as I know I can view the data in the particular row of the table using the comand: "select row.name from table.name;

And mysql has the "edit" command.

Is it possible that I can use the "edit" command to edit the data in the table?
What command should I use? If not what is the simpliest, command line method can I use to edit the data in the table?

"mysql --version" returns:
mysql Ver 12.22 Distrib 4.0.21, for pc-linux (i686)

Editing Mysql.proc Table
I need to use comment column in mysql.proc table but 64 characters is not sufficient for me. If I edit it to something like 100, is there any impact to mysql server?

Editing My.cnf
I've edited out /etc/my.cnf to contain two new lines that deal with query caching..

query_cache_type=1
query_cache_size=25M

Then I saved the file and restarted Mysql. This is under Linux Redhat.

For some reason when I reconnect and check the variables using
"SHOW VARIABLES LIKE '%query_cache%';"

query_cache_size is still 0 and none of the changes made in the file are applied. This is after shutting down and restarting mysql and shutting down and restarting the client.

Am I missing something? Doesn't matter if I connect to the DB as user or admin the variable changes simply aren't applied.

Command Editing
I'm running mysql 4.1 on a Mandrake 10.1 machine. When I try to edit commands using the arrow keys, many keys don't work properly, most notably the delete key.

That is, if I make a typo at eh beginning of a long command, I have to way to correct it. Entering the delete key just echos tilde characters in the console.

The bash prompt itself recognizes all these keys correctly. This sort of command editing seem to work fine under Win2K at the command prompt.

Editing Text
When I find out too late that I have missed off a vital comma how do I get back to edit the text?Sorry if this is rather dense of me - but all I seem to be able to achieve is getting to the beginning or end of the line I am on!

Editing A Record Simultaneously
I did a search but couldn't find anything regarding the following.

I'm working on a small application with table records (in this case containing a field for a chunk of text, and other fields for a title, created/modified date etc.) that can be edited by more than one person, but NOT at the same time.

So what I plan on doing is having a yes/no field in that record indicating if that record is currently being edited, with this field being changed during a transaction.

If a record is not being currently edited then whoever gets to the record first will become its editor, and then the editor is the one who can release the record back into being allowed to be edited again.

My question is if the current editor of a record hangs onto it for too long, how can I automatically "release it back" to being editable? For example the editor's computer may crash, or they may go away from their computer for a while etc.

I am thinking that when the record is first obtained it is stamped with the current time along with the "not editable" flag being set. Then in the future if someone else comes along to edit the record, if the record is still not editable, but the timestamp is now (say) 30 minutes in the past, then the record can be edited. Would that work? Can anbody see any other problems I might come up with?

Also, does anybody know of any online articles that discuss the things to consider when "simultaneously" editing records?

Editing Records In Mysql
I have downloaded the MySQL Administrator and MySQL Query Browser GUIs for Windows.  What I really want to do is just edit records visually without having to type SQL queries.  I thought for sure one of these two programs would allow me to do that, but I don't see where. 

I see how I can access databases ad and edit table information, but I don't see where I can go into a table and actually ad or edit a record without having to type SQL commands.  Am I missing something, or is there some other free program available that will allow me to visually edit records (that is, from Windows...I don't want to use phpMyAdmin)?  I can't imagine something like this doesn't exist for such a great database system as MySQL.

Command Line Editing
Using the command below as an example. I would like to know how to properly edit a command after a missed "'" {see [missing"'"]John', 'Smith',... Before I noticed the missed "'" & even though I up arrow & make the change it is done with a cursor line that starts with '> instead of -> (the normal mysql command line)

-> INSERT INTO users3 (first_name, last_name, email) VALUES
-> (John', 'Smith', 'jsmith@abc.com')
'> ****** Here is where i would like to get back to the normal command line ****

Editing And Amendment Of DB Or Its Tables.
If I set up the DB or any of its tables ot their fields wrongly, is it a straightforwadr matter of changing various values via phpMyAdmin or by coding directly, without losing any data or other tables settings?

I hope so, so that I can make a bit more progress. Y'see, i think I have my hand written tables normalised but I haven't yet spent much time learning how to setup each table and the fields in each.

Editing Not Working In PhpBB
After transfering my forum from one server to another, editing stopped working. You can go to phpBB's edit link, but when you try to edit the post nothing is changed. Topic titles can be edited, but nothing else can (including uploaded files with the attachment MOD).

If I edit it directly from phpMyAdmin it will work fine, but editing through the forum does nothing. On the last server it worked fine, although I'm pretty sure on my last server I was running on an older version of MySQL (3.x). On my new host (globat) I'm on MySQL 4.1.Nothing was changed in phpBB's scripts since the transfer, so nothing would have taken away the ability to edit post text. If anybody knows what is stopping these things I would greatly appreciate the help, since I've been looking for a solution for quite some time now.

Stored Procedure Editing
If I am creating a stored procedure from the mysql command prompt, it seems that I have to type all the content. Is there a way to paste text or load it from a text file into a stored procedure? I anticipate that the commands and querys will be lengthy and complex.

Editing A Mysql Database
1) I have FTP access to the server. How do I go about setting up the initial database? Do I do it or do I request to have it done? If I do it, can someone point me to a resource. If the server admin does it, what do I ask him/her for?

2) Ok, so now I have a mySQL database. Is it "portable"? What I mean by that is that with Access, I could browse on my hard drive, or server for that matter, and I would see a file called somedb.mdb. Is this the same with mySQL? Also, with an Access file, I can open it in MS Access and add,edit, and delete data all day long. How is this done with mySQL?

Editing Read Only Tables
ive got a database in phpmyadmin..i need to change a value in a coumn in a table..but when i do so, the following error message would show up:

Quote:
MySQL said: Documentation
#1036 - Table 'table' is read only

how can i deal with it

INSERTing Into A Table, With Values From Another Table
I'm programming a shopping cart application, where the products are categorized into different lines. I have a table that defines the different product lines, and now want to populate the product table.

However, the text file with the products in it, which I will use to populate the products table, uses the line NAME for each product, when I wish to use the line ID instead. To get the line ID, I would need to get the value from the line table.

My question is: is it possible to populate the products table with data from the products text file, as well as a column from the lines table?

That is, the INSERT (or LOAD DATA) statement will insert column values from the text file, but the line id from the lines table instead of the line name found in the file (WHERE line name = line name in the lines table).

I'm still not sure whether to use an INSERT, and write PHP code to go through the text file, or to use LOAD DATA for this task, because I don't know which statement would support what I'm looking for.



Insert Table Values From Another Table
I have two tables: Users and metadata

Users:
id
userid
username

Metadata:
id
userid
value

I would like to extract a list of the userid's from the users table and enter them into the metadata table, with an additional value.

Example:
I want to take all of the userid's from the User table and insert them into the Metadata table, and make the value="one" for each entry into the Metadata table.

Update One Table Value With Values From Another Table
I am trying to update one table value with values from another table, and I cannot get it to work. What am I doing wrong?

This is my SQL-command:
UPDATE tabel1 SET tabel1.name=tabel2.name WHERE tabel1.ID=tabel2.ID

Inserting Values From 1 Table Into Another Table
I have 2 tables: A and B
Table A contains fields u, x and y
Table B contains fields u and z

Table A has all possible variations of u.
Table B has some of the varaiations of u in it.

My problem is that I'm trying to insert the z-values from Table B into Table A's y field and link them up based on the u-values.

I'm running into problems like truncating at row 0.

I've tried the following queries:

update TableA set y =(select TableB.z from TableB where TableA.u=TableB.u)

update TableA,TableB set TableA.y =(select TableB.z from TableB where TableA.u=TableB.u)

MySQL -- Editing Existing Data In A Row
I looked through ALTER table, and some tuts over at w3schools (my heros) but I can't seem to find a way to edit EXISTING data in an EXISTING row of a table.

Editing Content Contained In A Field
I have a table in my database where I need to search for text withing a
field and delete it. The text that I need to find is not the only text
in the field, it is in the field with other text.

I am able to single out the records that need updating by using the
statement:
SELECT * FROM `events` WHERE `EVT_name` LIKE '%Jazz Stage: %';

How do I edit the fields using a simple query?

Editing Part Of Field In MySQL
I exported an excel database with no number formatting to a comma delimited txt file and imported it into mySQL. The database contains 24000 rekords.

For some reason some 3000 odd rekords were imported with .00 decimals. Is there a way through a SQL query that I can delete ONLY the incorrect .00 data from multiple fields? I don't exactly look forward to manually editing 3000 rekords!

Add Values To Table
I have a table tblMailingList. It has 3 columns; Name, EmailAdd, AutoID.

I am using
mysql> INSERT INTO pet
-> VALUES ('name1','u@me.com');

but I am unsure as to what to do for the AutoID field. If I use the example given, the error message says that the number of fields is different.
How do I get this info into my table?

Passing Or Acquiring Data For Editing/updating
i'm trying to adapt someone else's scripts to acquire information, and edit/update this information.

i can display the info through an array, example:
foreach ($url_array as $row)
echo $row['bm_URL'];

how do i edit this data, and update that same row?

i understand that i need to go to a new file, say edit_url.php.
in displaying the data, do i need to request the data anew?
for example:

if (!($conn = db_connect()))
return false;
$result = mysql_query( "select * from bk_bookmark where username = '$username'");
if (!$result)
return false;

//here is the start of where i am having difficulty retrieving info
$url_array = array();
while ($row = @mysql_fetch_array($result)) {
$row->bm_URL=addslashes($row->bm_URL);
$url_array[] = $row;
}
return $url_array;
}


foreach ($url_array as $row) {
# html form/table data
<tr><td>edit url</td><td><input value=<?php echo $row['bm_URL']; ?></td></tr>
}

Html Form For Editing Mysql Database
What I need is large text area boxes to appear on the page. The data I'm editing includes carriage returns and quotes here and there in the text. Besides the text appearing in a small box, the text ends at the first instance of a carriage a return. Code:

INSERT Values From One Table To Another
In table A i have a.id and name and in table B, i have b.id, a.id(FK) and owns.

Table A
--------------
a.id | name |
--------------
12 | James |
13 | Paul |
14 | Tom |
15 | Andy |


Table B
--------------

b.id | a.id | owns |
--------------------
1 | 12 | Car |
2 | 12 | Bike |
3 | 13 | PC |

Now what i want is to add two new names to table A which will be Tom and Andy and have the same data in table B for Tom and Andy with just different b.id (PK).

How can i insert this new data in table B using insert?

Update A Table With Values In Another
I have the following table

tableA
column_a
column_x
column_y
column_z

tableB
column_x
column_y
column_z

How do I update the rows of tableA that match rows of tableB (all rows
of tableB are unique)

What I want to acheive is a check against tableA.column_x with
tableB.column_x, if they match, then update the row in tableA.column_y
with the value of tableB.column_y and tableA.column_z with
tableB.column_z

Edit Values In Table Through GUI
I wonder which GUI tool I can use if I want to edit some values in a table? I can't find it in Query Browser. Do I really need to execute SQL to make a simple change to a field?

Update Table Values
I have a csv.txt file with contacts and their information in it. Then I also have a table in mysql with the same contacts and their various information. I need to merge these to so that if a field value in the database is NULL the value that is in the csv.txt file is inserted into the database field.

I have been looking at the mySQL site on how to do this but have not been able to produce a working solution. Below is a more detailed example of what I am looking for. Code:

Returning Values That Are In One Table, But Not In Another
I'm looking for a query to return values which occur in one table, but not in the other.

Say we have two tables (table_1, table_2) each with a column titled "appointments".

I want a list of results for appointments which are in table_1, but not in table_2

I have tried the following, but all I get is a huge list of duplicate appointments which occur in both tables:

SELECT table_1.appointments
FROM table_1, table_2
WHERE table_1.appointments<>table_2.appointments;

I've also tried 'NOT IN' for this but the result was just the same.

Get The 3 Highest Values From A Table
My problem is to get the 3 highest values from a table

Building Dynamic Pages For Editing Database Records
I need to develop a way for my client to edit information in a MySQL database. Basically, something very similar to how PHP MyAdmin works only slighly less complicated. There does not need to be the ability to edit the structure of the database or tables or anything like that, simply the information and entries.

I have searched google and yahoo with the following phrases, but have found that most of the results are topics on how to use database editors or where to buy third party software.
------
database administration pages
Building MySQL Admin pages
building web admin page
build a web based database administration console
build PHP my admin pages from scratch
My SQL Admin pages
create web based database administration
Creating administration pages
Creating web admin page from Access in php
------
I've also searched CodingForums.com for threads from others that may have been trying to do the same thing. I didn't really find anything relevent.

Perhaps someone could lead me in the right direction or tell me if I'm not searching correctly. What I'm trying to do has to have been done before, I'm just not having any luck on finding the right information.

I figure that I'm going to end up building this from scratch with PHP, but I thought I'd ask to see where to start or if there are examples out there that I may be able to model after.

Inserting Values Into A Mapping Table
I am using a mapping table with two primary keys (ID1, ID2). When I try to insert data into this table I get the following error:
Quote:

Violation of PRIMARY KEY constraint 'PK_myTable'. Cannot insert duplicate key in object 'dbo.myTable'. The statement has been terminated.

I am able however to insert values if I do it directly into my table.
Here is an excerpt of my

comm = New SqlCommand( _
"INSERT INTO myTable (ID1, ID2) " & _
"VALUES (@ID1, @ID2)", conn)
' Add command parameters
comm.Parameters.Add("@ID1", System.Data.SqlDbType.Int)
comm.Parameters("@ID1").Value = ID1List.SelectedItem.Value
comm.Parameters.Add("@ID2", System.Data.SqlDbType.Int)
comm.Parameters("@ID2").Value = ID2List.SelectedItem.Value

Generating A Table With Missing Values In SQL
I have the following table:

+------+------+------+-----------+
|ID |GROUP |CODE |ANSWER |
+------+------+------+-----------+
|1 |1 |001 |01-01-2003 |
|2 |1 |002 |Yes |
|3 |1 |003 |NA |
|4 |1 |004 |297797 |
|5 |1 |005 |0 |
|6 |2 |002 |Yes |
|7 |2 |004 |297852 |
|8 |2 |005 |1 |
+------+------+------+-----------+

This means that code 001 and 003 of group 2 are missing. Result of the
query should be:

+-------+-----------+-----------+-----------+-----------+--------+
|GROUP |ANSWER1 |ANSWER2 |ANSWER3 |ANSWER4 |ANSWER5 |
+-------+-----------+-----------+-----------+-----------+--------+
|1 |01-01-2003 |Yes |NA |297797 |0 |
|2 |NULL |Yes |NULL |297852 |1 |
+-------+-----------+-----------+-----------+-----------+--------+

The missing values should be replaced by a NULL value in my resultset.
Is this possible? I don't have any clue how my query should look like,
can anyone help me and show me a solution?

Eliminating Double Values From A Table
I need to consolidate data from many adress databases, which i  allready sucessfully put into one table1. As Newbie i am reviing the Manuals and tutorials, but in 2 days i learned a lot about the powerfull command, but not how to solve the following question:

Is there a straight forward method to copy data from one table1 into the other table2, but not those rowse, which have same value in Fieldx.

All my Update and INSERT SELECT experiments somehow created more then less data in the target table.

Update Query Where Values Will Come From Other Table
I'm creating an update query which the value will come from another table.

I have here my current query which unfortunately makes the system hangs. Probably because of the query itself is not properly coded.

update boxes b inner join messages m
on b.ctnnumber = m.ctnno
set b.consigneerecv = m.CName,
b.consigneerecvdate = m.DateRcv,
b.phrecventered = "Y",
b.PhilStatus = "delivered",
b.prevreleasestatus = b.releasestatus,
b.releasestatus = "delivered",
b.PhilStatusDate = m.smsrecvdate,
b.phdelprice = "0.00",
b.phdelamt = "0.00",
b.recvrelation = m.Relation,
b.APRecventered = m.smsRecvDate
where b.consigneerecv = ''
or b.consigneerecv = 'NA'
or b.consigneerecv is null;

I'm thinking revising it so that it will not cause the system to hang but I don't know how. Guys please help me with this one. I also have this another idea which probably will not work. My idea was something like this:

Update table1 set table1.column1 = (select table2.column1 where table2.column1 = table1.column1),
table1.column2 = (select table2.column2 where table2.column1 = table1.column1), .....

Insert Values Only If They Do Not Already Exist In Table
I want to insert some values from one table (A) into another table (b). However there are some values in table A which exist two times in table A. I only want to insert values one time. So If a certain field value also exist in some other row (same fieldname) then I don't want to insert it twice. It doesn't matter which of the two rows will be inserted.

Can this be done with MySQL? Maybe with some Control Flow Functions?

Updating A Table To Increment Values
Question, if I want to update all values in a certain column to increment by one, what statement could I use? In quasi-MySQL, this is my pseudocode:

UPDATE table SET fields=[previous_val+1] where [previous_val]>[my_val]

Or do I HAVE to run a SELECT query, increment the value, and THEN Update it?

I was just thinking there'd be an easier way.

Accepting Values As NULL When Not In Another Table
Is it possible to perform a SELECT query on multiple tables and simply accept one of the values as NULL if not in another table rather than the whole query failing?

For instance, if "rec_id" exists in "table_1" for certain but it is uncertain if it exists in "table_2", is it possible to return the query with a variable assignment stating whether "rec_id" was or wasn't found in "table_2"?

I am hoping I can do this without a LEFT OUTER JOIN as the query is fairly complex and involves five different tables. Whenever results are fetched I simply need to know if rec_id is or isn't in table_2 if it is found in table_1.

As there are frequently over 10,000 result rows returned it wouldn't be sound to put this into a seperate loop that queries with each rec_id to see if it is in table_2.

I have tried "SELECT table_1.rec_id, table_2.rec_id FROM table_1, table_2 WHERE table_2.rec_id=table_1.rec_id OR table_2.rec_id IS NULL" but this returns no records.

An Enum Field Using Values From Another Table
The first table, called genus, contains several fields, the important one in genus is name, and there are others about the individual plant types.

The second table 'plants' needs one field for the genus name, so that I can link tables on this. If there a way to make a foreign key from the genus table into an enum field on the second? My idea is that then, with phpmyadmin or similar I can just select the genus name from a list when entering new plant data.

Renumber Mysql Table Values
There are 100000 rows in a table, I need to renumber them from
1,3,6,8,11,14,21,55,888,1000,9999...99999
to
1,2,3,4,5,6,7,8,9,10,11,12,13,14...
etc
I also need to update an associated table, so its going to need to lock the tables, find the lowest available index in table1, then update table1 index, and then update table2 to use the same index as well, then unlock tables

What would be the procedure to do that?

Returning All Unique Values From A Table Field
I wrote a select that works fine but I am looking at it and thinking that the query might require mysql to scan EVERY row before giving me my answer.

Lets pretend I have a table with fruits and want to return all the available colors of those fruits that I currently have in the database.

Is this an efficient or horribly inefficient statement?

"select color from fruits group by color"

It seems to return what I want:

fruits:
------
blue
green
yellow
...

I am just wondering if it goes through EVERY row and groups them?
If I have the table indexed by color am I allright?

Replace Some Username Values With The Users ID In A Different Table
I really can't figure this out. I want to replace some username values with the users ID in a different table.

The tables are

pictures
user (Example FRED)
picture (Example pic.gif)

users
id (Example 5233)
user (Example FRED)

What I want to do is replace the user column in pictures with the correct id from the users table

So in the pictures table, it would no longer be FRED it would be 5233

Is there a query I can run to do this?

I'd really appreciate some feedback

Query To Insert 2 Foreign Key Values In Table
I want to insert 2 foreign key values along with some other value into table ....

INSERT INTO Table (vars) VALUES(vals)
I am trying to use the following command:
INSERT INTO sr_main (originator,symreq) VALUES (A.Person,269);

Whenever I enter the command above I get the following error:
ERROR 1054 (42S22): Unknown column 'A.Person' in 'field list'

I am confused because the error refers to my _value_ 'A.Person' as a column!? Do string values need to be surrounded with quote marks of some type? I have already tried the obvious (to me) quote markers, e.g. ", '

The data is accepted if I use this command:
INSERT INTO sr_main (originator) VALUES (269);

I actually have a lot more fields and values than shown, and ideally would like to use the command type:

INSERT INTO tablename (field1,field2,field3) VALUES (1,2,3)

Code:

Counting Occurrences Of Values In Table Column.
I have two tables;

Table 1;

Agent_ID UserID First_Name Last_Name

1ShadShad Mortazavi
2Harry Harry Potter
Table 2;

Recording_IDAgent_ID Status GSM_File etc
11 000001.gsm
21 0 00002.gsm
32 100003.gsm
41 200004.gsm
51 100005.gsm
61 200006.gsm
72 100007.gsm

Status 0 = Red, 1 = Yellow and 2 = Green

I would like a query that returns the number of occurrences of Red, Yellow, Green against each agent

so the data returned would look something like this;

NameREDYellow Green
Shad Mortazavi 2 0 2
Harry Potter 0 2 0

I'm using MySQL version 3.23.58

I can do this programmatically in Perl with several query's; but this is CPU intensive. If I could get this in one query I it would save time.

Selecting Unique Values From A Table (NOT DISTINCT!)
Lets say we have a table that has the field photo_id and has values of it many times. For example 245 can exist any number of times (1, 5, 8, e.t.c.).

I want to select the values that exist in the table ONLY ONCE. Please note that i dont want to select each value once (using DISTINCT), that would return all the values that exist in the table.

For example lets say the table has the following values:

245
563
776
224
563
563
776
776
776
776

The query i want to make should return only the values 245 and 224 as 563 and 776 exist many times in that table.

Date/Time As A Default Values For A Table Column
I am new to mySQL, so this question might be simple.I want to add a default value to a column that is the current date/time. I am using the mySQL Administrator and will not allow me to use a function like CURRENT_TIMESTAMP() or NOW() as a default value. I used to do this with other databases (I always add a column to all of my tables called InsertDateTime and UpdateDateTime. It helps to track down data entry problems)

Updating Column With Sumned Values For Each Record In Table
I have most of the query formulated, but am stuck on the portion where I need to specify which records to update. I want to update all the records in the table. How can I specify the request_id to be the same in both the select and update statement?

Here's the query I'm working on:

Code:


update enhancementrequests2 set
hardBenefitEffortSavings = (SELECT hardBenefitEffortSavings + hardBenefitLaborSavings + hardBenefitHardwareSoftwareSavings
+ hardBenefitOtherSavings AS hbTotal
FROM enhancementrequests where request_id = 1), hardBenefitLaborSavings = NULL, hardBenefitHardwareSoftwareSavings = NULL,
hardBenefitOtherSavings = NULL
where request_id = 1



In my example I have specified that request_id = 1, but I want request_id to match each row of the table in turn. I hope that makes sense.


Copyright © 2005-08 www.BigResource.com, All rights reserved